C语言程序设计经典题目大汇总(9)

2019-08-03 12:22

for(i=0;i

for(j=0;j

{

printf(\ scanf(\

}

for(i=0;i

{

for(j=0;j

{

printf(\

}

printf(\

}

printf(\分隔线*/

for(i=0;i

{

for(j=0;j

{

if(a[j][i]>a[i][j])

{

t=a[j][i];a[j][i]=a[i][j];a[i][j]=t;

} }

for(j=i;j

{

printf(\

}

printf(\

for(k=0;k

}

getch();

}

【运行结果】 a[0][0]=1 a[0][1]=2 a[0][2]=3 a[0][3]=4 a[1][0]=5 a[1][1]=6 a[1][2]=7 a[1][3]=8

a[2][0]=9 a[2][1]=10 a[2][2]=11 a[2][3]=12 a[3][0]=13 a[3][1]=14 a[3][2]=15 a[3][3]=16

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 -----------

1 5 9 13 6 10 14 11 15

16

24.通过键盘给 3×4 的二维数组输入数据,然后分别按行和按列输出数组元素。 #define M 3 #define N 4 main() {

int a

[N],i,j;

printf(\

for(i=0;i

{

printf(\提示输出元素位置*/ scanf(\ /*为指定元素赋值*/

}

printf(\ /*按行输出数组元素值*/

for(i=0;i

printf(\

printf(\按列输出数组元素值*/

for(i=0;i

for(j=0;j

printf(\

getch();

}

【运行结果】

Input integer number: a[0][0]=1 a[0][1]=2 a[0][2]=3 a[0][3]=4 a[1][0]=5 a[1][1]=6 a[1][2]=7 a[1][3]=8 a[2][0]=9 a[2][1]=10 a[2][2]=11 a[2][3]=12 Out by row:

1 2 3 4 5 6 7 8 9 10 11 12 Out by collum:

1 5 9 2 6 10 3 7 11 4 8 12

25.编写程序,将两个字符串连接起来,不要使用 strcat 函数。 #include\main()

{

char str1[80],str2[80];

int i=0,l1;

printf(\

gets(str1); /*若换成scanf(\后面应该增加fflush(stdin);函数语句*/

printf(\

gets(str2);

l1=strlen(str1); /*计算字符串 1 的长度*/ while(str2[i]) {

str1[l1+i]=str2[i]; i++;

}

str1[l1+i]='\\0'; /*字符串连接后,不能忘记追加一个字符串结束符*/ puts(str1); /*可换成语句:printf(\

getch(); }

26.输入一行字符串,统计该字符串中字符对 ab 的个数。 #include\

main()

{

char str[80]; int i=0,count=0;

printf(\ gets(str); while(str[i])

{

if(str[i]=='a' && str[i+1]=='b') {

count++;

i+=2; /*如果在当前 i 的位置找到一对,则 i 越过 b 个字母*/ }

else i++; /*如果在当前 i 的位置未找到,则 i 指向下一个字母*/ }

printf(\ getch(); }

27.从键盘输入 10 个字符串,找出一个最长的字符串。 #include\

main() {

char str[10][80]; /*设置二维字符数组,每一维可以记录最大79个字符的字符串*/ int i,len,k[10],n=0,max=0;

printf(\

for(i=0;i<10;i++) /*向 str 数组输入 10 个字符串*/ {

printf(\ gets(str[i]);

len=strlen(str[i]); /*计算输入之字符串之长度*/

if(len>max){max=len;n=0;k[n]=i;} /*记录最长字符串的长度、个数、在数组位置(行)*/

else if(len==max)k[++n]=i; /*与已记录最大长度相同时,记录其在数组中位置(行)*/ }

if(n==0) /*此时说明只有一个最大长度字符串,是 str[k[0] */

{

printf(\输出其序号*/ puts(str[k[0]]); }

else /*此时说明有不止一个最大长度字符串时需要处理的复合语句*/ {

printf(\

for(i=0;i<=n;i++) /*分别输出各序号、字符串*/ {

printf(\ puts(str[k[i]]); } }

getch(); }

28.已知数组 a 中有 m 个按升序排列的元素,数组 b 中有 n 个按降序排列的元素,编程将 a 与 b 中的所有元素按降序存入数组 c 中。

【提示】将 a 中的元素最大值与 b 中元素最大值相比,将最大值存入 c 数组中,然后调整 c 、a 或 b 元素指针(地址),依次重复前序工作,即可。 #define M 3 #define N 7 main()

{

int i=0,j=0,n=0,c[M+N],a[3]={10,27,543},b[7]={300,210,173,96,55,34,13}; int maxa,maxb; do {

maxa=a[M-i-1];maxb=b[j]; if(maxa>maxb)

{

c[n++]=maxa; /*将 a 中最大元素赋值给 c 数组当前元素,并调整 c 新元素位置*/

i++; /*调整 a 中元素位置*/ } else {

c[n++]=maxb; /*将 a 中最大元素赋值给 c 数组当前元素,并调整 c 新元素位置*/

j++; /*调整 b 中元素位置*/ }

printf(\打印输出 c 中新赋值元素数据*/

}while(n

第八章

1.指针变量初始化。 #include void main()


C语言程序设计经典题目大汇总(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:3.3.15项目中间验收、交接管理规定

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: