湖北理工学院14本科c语言实验报告实验四 数组
(17页)
本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!
19.90 积分
实验四实验四 数数 组组实验课程名实验课程名:C C 语言程序设计语言程序设计 专业班级:专业班级: 14 电气工程电气工程 2 班班 学号:学号: 201440210237 姓名:姓名: 熊帆熊帆 实验时间:实验时间: 5.12-5.26 实验地点:实验地点: K4-208 指导教师:指导教师: 祁文青祁文青 一、实验目的和要求1.掌握一维数组和二维数组的定义、赋值和输入输出的方法; 2.掌握字符数组和字符串函数的使用; 3.掌握与数组有关的算法(特别是排序算法) 。二、实验内容1.1. 调试下列程序,使之具有如下功能:输入调试下列程序,使之具有如下功能:输入 10 个整数,按每行个整数,按每行 3 个数输出这些整数,最后输个数输出这些整数,最后输出出 10 个整数的平均值。写出调试过程。个整数的平均值。写出调试过程。 #include #define N 10 void main( ){ int i,a[N],av;for(i=0;i #define N 10 void main() { int i,a[N]; float av=0; for(i=0;i void main( ){int i, a[5], sum = 0;scanf(“%d,%d,%d,%d,%d“, a );for (i = 0; i void main() { int i,a[5],sum=0; for(i=0;i void main( ) {int i, j, row, colum, max; static int a[3][4] = {{1,2,3,4}, {9,8,7,6}, {-10,10,-5,2}};…… printf(“ Max = %d, Row = %d, Colum = %d \n“, max, row, colum); }解答: ((1 1))源代码:源代码: #includevoid main() { int i,j,row,colum,max; static int a[3][4] = {{1,2,3,4}, {9,8,7,6}, {-10,10,-5,2}};max=a[0][0]; for(i=0;i void main() { int i,x,a[10]={1,2,3,4,5,6,7,8,9,10};scanf(“%d“, for(i=0;i void main() { int a[11],i,j,x,temp; printf(“请输入 10 个整数:\n“); for(i=0;i=x break; } else continue; } for(i=0;i void main() { int a[10],i,m,t,n; printf(“输入十个互不相同的整数:\n“); for(i=0;i void main( ){ float x[1000], sum=0.0, ave, a;int n=0, i;printf (“Enter mark : \n“) ;scanf(“%f“, while (a>=0.0 int n=0,i; printf(“Enter mark : \n“) ; scanf(“%f“,while(a>=0.0 for(i=0;i0 } } } printf(“下面的是杨辉三角形\n“); for(i=0;i #include void main(){ char a[10],b[10];int c,d,k,ch;scanf(“%s“,scanf(“%s“, printf(“a=%s,b=%s\n“,a,b);c=strlen(a);d=strlen(b);if(c>d)for(k=0;k #include void main() { char a[10],b[10];int c,d,k,ch;scanf(“%s“,scanf(“%s“, printf(“a=%s,b=%s\n“,a,b);c=strlen(a);d=strlen(b);if(c>d)for(k=0;k #include void main( ) { char s1[80], s2[40];int i = 0, j = 0;printf(“ \n Please input string1:“);scanf(“%s“, s1);printf(“ \n Please input string2:“);scanf(“%s“, s2);while (s1[i]!= '\0' ) i++;while (s2[j]!= '\0' ) s1[i++]=s2[j ++];s1[i]= '\0';printf(“\n New string: %s“, s1); } 编辑、运行该程序,然后分别输入 Country 和 side。请问: ① 程序执行的结果是什么? 输出:Countryside ② 该程序的功能是什么? 将第二个字符串连接到第一个字符串的后面从而组成一个新的字符串 解答: ((1 1))源代码:源代码: #include #include void main( ) { char s1[80], s2[40];int i = 0, j = 0;printf(“ \n Please input string1:“);scanf(“%s“, s1);printf(“ \n Please input string2:“);scanf(“%s“, s2);while (s1[i]!= '\0' ) i++;while (s2[j]!= '\0' ) s1[i++]=s2[j ++];s1[i]= '\0';printf(“\n New string: %s“, s1);printf(“\n“); }((2 2))运行结果运行结果:(3)运行结果分析运行结果分析:运行程序的时候先输入 Country,再输 side,经过程序的运行,实现了将 side 连接到 Country 的后面形成新的单词 Countryside,即实现了将第二个字符串连接到第一个字符 串的后面从而组成一个新的字符串的功能。11. 填空完成下面程序,使其功能是对从键盘上输入的两个字符串进行比较,然后输出两个字填空完成下面程序,使其功能是对从键盘上输入的两个字符串进行比较,然后输出两个字 符串中第一个不相同字符的符串中第一个不相同字符的 ASCII 码之差。例如:输入的两个字符串分别为码之差。例如:输入的两个字符串分别为 abcdefg 和和 abceef,, 则输出为则输出为-1。程序如下:。程序如下:#include void main ( ){ char str1[100],str2[100];int i,s;printf(“\n Input string 1:\n“);gets(str1);printf(“\n Input string 2:\n”);gets(str2);i= (1) ;while((str1[i]==str2[i])s= (3) ;printf(“%d\n“,s);}解答: ((1 1))源代码:源代码: #include void main() { char str1[100],str2[100];int i,s;printf(“\n Input string 1:\n“); gets(str1);printf(“\n Input string 2:\n“); gets(str2);i=0;while((str1[i]==str2[i])s=str1[i]-str2[i];printf(“%d\n“,s); }((2 2))运行结果运行结果:(3)运行结果分析运行结果分析:运行程序时先输入 hey boys,再输入 hey girls,两个字符串中第一个不相同 字符分别为 b 和 g,ASCII 码值相差-5,与事实相符。12. 填空完成下面程序,使其的功能是统计从终端输入字符中每个大写字母的个数。用填空完成下面程序,使其的功能是统计从终端输入字符中每个大写字母的个数。用#号作号作 为输入结束标志。程序如下:为输入结束标志。程序如下:#include #include void main ( ){ int num[26],i; char c;for (i=0;i #include void main() { int num[26],i; char c;for(i=0;i#includevoid main() { char a[20][20]; int i=0,t=0,b,c; printf(“请输入字符串吧!\n“); while(1) { scanf(“%s“,a[i]); b=strlen(a[i]); printf(“%3d“,b); if(t #include void main() { char s1[20],s2[20],t1[20],t2[20]; int i,j,n,f; printf(“请输入:\n“); scanf(“%s%s%d“,s1,s2, n=strlen(s1); for(i=0;i
天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文