- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
目录
复试试题 1
2006 1
2007 3
2008 5
2009 8
C 语言课本 11
栈 14
链表 15
树 18
树的递归遍历 18
树的非递归遍历 19
图 24
图的遍历 24
图的拓扑排序 28
//stack.h头文件 28
//stack.h头文件 29
//main.cpp文件 31
复试试题
2006
//2006-1输入一行字符,统计各种字符的个数
#includestdio.h
int main()
{
int letter=0,blank=0,number=0,other=0;
char str[40],*p;
puts(请输入一行字符\n);
gets(str);
p=str;
for(;*p!=\0;p++)
{
if((*p=a*p=z)||(*p=A*p=Z))
{
letter++;
}
else if(*p=0*p=9)
{
number++;
}
else if(*p== )
{
blank++;
}
else{
other++;
}
}
printf(字母个数:%d\n,letter);
printf(数字个数:%d\n,number);
printf(空格个数:%d\n,blank);
printf(其它字符个数:%d\n,other);
return 0;
}
/*
请输入一行字符
mini focus flow haha***0)))__++++
字母个数:
数字个数:
空格个数:
其它字符个数:
请按任意键继续. . .
*/
//2006-2输入N个数,使前面各个数顺序后移M个位置,最后M个数变成最前面的M个数字
#includestdio.h
int main()
{
int n,m=3,*p,j,i;
int a[9];
for(i=0;i9;i++)
{
a[i]=i+1;
printf(%d\t,a[i]);
}
printf(\n);
for(i=0;im;i++)
{
n=a[0];
for(j=1;j9;j++)
{
a[j-1]=a[j];
}
a[8]=n;
}
for(i=0;i9;i++)
{
printf(%d\t,a[i]);
}
printf(\n);
return 0;
}
/*
1 2 3 4 5 6 7 8 9
4 5 6 7 8 9 1 2 3
请按任意键继续. . .*/
2007
//2007-1输入数组,最大的一个与第一个元素交换,最小的与最后一个元素交换
#includestdio.h
int main()
{
void swap(int *p,int *q);
int a[10],min=0,max=0,i,*p;
puts(请输入十个整数:\n);
for(i=0;i10;i++)
{
scanf(%d,a[i]);
}
printf(\n);
for(i=0;i10;i++)
{
printf(%d\t,a[i]);
}
for(i=1;i10;i++)
{
if(a[i]a[max])
{
max=i;
}else if(a[i]a[min])
{
min=i;
}
}
if(max!=0)swap(a[max],a);
if(min!=9)swap(a[min],a[9]);
puts(修改后的字符串为:);
for(i=0;i10;i++)
{
printf(%d\t,a[i]);
}
return 0;
}
void swap(int *p,int*q)
{
int temp;
temp=*p;
*p=*q;
*q=temp;
}
/*
请输入十个整数:
10
20
2
5
2
1
5
2
5
20
10 20 2 5 2 1 5 2 5 20
修改后的字符串为:
20 10 2 5 2 20 5 2 5 1
请按任意键继续. . .*/
//2007-2实数转化为小数和整数
#includestdio.
文档评论(0)