C语言常见经典的上机实验题目.doc
文本预览下载声明
3.3 常见、经典的上机实验题目
1、
/*功能:数组x有十个元素,编程将其元素首尾颠倒。(即第一个元素与最后一个元素交换,第二个元素与倒数第二个元素交换…)。*/
main()
{int a[10]={5,65,654 ,5 ,5 ,56,588,77,58,5},j,x;
for(j=0;j5;j++)
{x=a[j]; a[j]=a[9-j]; a[9-j]=x;}
for(j=0;j10;j++)
printf(%d\t, a[j]);
}
2、
/*功能:统计输入的一串字符(假设以‘\n’结束)中,大写字母A,B,...,Z各出现的次数。(提示,用一个数组count[26]计数各个字母出现的次数,count[0]表示A出现的次数,count[1]表示B出现的次数,...,count[25]表示字母Z出现的次数。初始时count的各元素值为0。以后,每读入一个字符ch ,若它是一个大写字母,就让相应计数单元count[ch-A]加1。 ,i;
char ch[80];
for(i=0;i26;i++)
count[i]=0;
gets(ch);
for(i=0;istrlen(ch);i++)
if (ch[i] =Ach[i]=Z) count[ch[i]- A]++;
for(i=0;i26;i++)
printf(%c %d\t, A+i,count[i]);
}
3、
/*功能:键盘输入若干数,输出它们的平均值,输入值为-1时,结束输入*/
main( )
{int x,i=1,s;
scanf(%d,x);
while(x!=-1)
{s=s+x;i++;
scanf(%d,x);
}
printf(%d\n,s/i);
}
4、
/*功能:在字符串str中查找字符ch首次出现的位置,若str字符串中不包含字符ch,则输出0。(例如:若str为china,ch为a,则输出5*/
#include stdio.h
main( )
{char str[20],ch;
int i,m=0;
ch=getchar( );
gets(str);
for(i=0; str[i]!= \0; i++)
if(str[i]= =ch) {m=1; break;}
if (m= =1) printf(%d \n,i+1);
else printf(%d \n,0);
}
5、
/*程序功能:求Fibonacci数列的前40个数。*/
main()
{ long int f1=1,f2=1; /*定义并初始化数列的头2个数*/
int i=1; /*定义并初始化循环控制变量i*/
for( ; i=20; i++ ) /*1组2个,20组40个数*/
{ printf(%15ld%15ld, f1, f2); /*输出当前的2个数*/
if(i%2==0) printf(\n); /*输出2次(4个数),换行*/
f1 += f2; f2 += f1; /*计算下2个数*/
}
}
6、
/*程序功能:输出10~100之间的全部素数。*/
main()
{ int i=11, j, counter=0;
for( ; i=100; i+=2) /*外循环:为内循环提供一个整数i*/
{ for(j=2; j=i-1; j++) /*内循环:判断整数i是否是素数*/
if(i%j==0) /*i不是素数:因为能被2~(i-1)之间的某个数整除*/
break; /*强行结束内循环,执行下面的if语句*/
if(counter%10==0) /*每输出10个数换一行*/
printf(\n);
if( j = i ) /*整数i是素数:输出,计数器加1*/
{ printf(%6d,i);
counter++;
}
}
}
7、
/*程序功能:有一个整型的二维数组,大小为6×3,要求找出最大值所在的行和列,并输出。*/
main( )
{int x[6][3],i,,j,a=0,b=0,max;
for(i=0;i6; i++)
for(j=0;j3; j++)
scanf(%d,x[i][j]);
max=x[0][0];
for(i=0;i6; i++)
for(j=0;j3; j++)
if(x[i][j]max)
显示全部