C程序设计课堂练习题.doc_第1页
C程序设计课堂练习题.doc_第2页
C程序设计课堂练习题.doc_第3页
C程序设计课堂练习题.doc_第4页
C程序设计课堂练习题.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C程序设计课堂练习题2010-5-6一、变量的使用方法1、全局变量定义#include stdio.hint x; /* 定义全局变量x */int f( ) int x = 4; /* x为局部变量 */ return x;int main(void) int a = 1; x = a; /* 对全局变量 x 赋值 */ a = f( ); /* a的值为4 */ int b = 2; b = a + b; /* b的值为4 */ x = x + b;/* 全局变量运算 */ printf(%d %d , a, x); return 0;2、静态局部变量示例#include void fun (int k);int main (void) int k; for (k = 1; k = 3; k+) fun (k); return 0; void fun(int k) static int a; printf (%d, , a); a += k ; 二、数组的使用方法1、排序问题输入一个正整数n (1n10),再输入n个整数,用选择法将它们从小到大排序后输出。 #include int main(void) int i, index, k, n, temp; int a10; /* 定义1个数组a,它有10个整型元素*/ printf(“Enter n: ); scanf(%d”, &n); printf(“Enter %d integers: , n); for(i = 0; i n; i+) scanf(%d, &ai); for(k = 0; k n-1; k+) /* 对n个数排序 */ index = k; for(i = k + 1; i n; i+) if(ai aindex) index = i; temp = aindex; aindex = ak; ak = temp; printf(After sorted: ); for(i = 0; i n; i+) /* 输出n个数组元素的值 */ printf(%d , ai); return 0; 2、计算fibonacci数列用数组计算fibonacci数列的前20个数,并按每行打印5个数的格式输出。1, 1, 2, 3, 5, 8, 13, #include int main(void) int i; int fib20 = 1, 1; /* 数组初始化 */ for(i = 2; i 20; i+) fibi = fibi - 1 + fibi - 2; for(i = 0; i 20; i+) printf(%6d, fibi); if(i + 1) % 5 = 0) /* 5个数换行 */ printf(n); return 0; 3、在数组中查找一个给定的数输入5个整数,将它们存入数组a中,再输入1个数x,然后在数组中查找x,如果找到,输出相应的下标,否则,输出“Not Found”。#include int main(void) int i, flag, x; int a5; printf(“Enter 5 integers: ); for(i = 0; i 5; i+) scanf(%d, &ai); printf(“Enter x: ); scanf(%d, &x); flag = 0; for(i = 0; i 5; i+) if(ai = x) printf(Index is %dn, i); flag = 1; break; if(flag = 0) printf(Not Foundn); return 0; 4、求最小值及其下标输入n(n10), 再输入n个数, 输出最小值和它所对应的下标。#include int main(void) int i, index, n; int a10; printf(“Enter n: ); scanf(%d, &n); printf(“Enter %d integers: , n); for(i = 0; i n; i+) scanf(%d, &ai); index = 0; for(i = 1; i n; i+) if(ai aindex) index = i; printf(min is %dtsub is %dn, aindex, index); return 0;5、求矩阵的最大值 将1个3*2的矩阵存入1个3*2的二维数组中,找出最大值以及它的行下标和列下标,并输出该矩阵。 int main(void) int col, i, j, row; int a32; printf(“Enter 6 integers:n) ; for(i = 0; i 3; i+) for(j = 0; j 2; j+) scanf(%d, &aij); for(i = 0; i 3; i+) for(j = 0; j 2; j+) printf(%4d, aij); printf(n); row = col = 0; for(i = 0; i 3; i+) for(j = 0; j arowcol) row = i; col = j; printf(max = a%d%d = %dn, row, col, arowcol); return 0; 6、生成一个矩阵并输出 定义1个 3*2 的二维数组a,数组元素的值由下式给出,按矩阵的形式输出a。aij = i + j(0i2,0j1)#include int main(void) int i, j; int a32; for(i = 0; i 3; i+) for(j = 0; j 2; j+) aij = i + j; for(i = 0; i 3; i+) for(j = 0; j 2; j+) printf(%4d, aij); printf(n); return 0; 7、方阵转置 输入一个正整数n (1n6),根据下式生成1个n*n的方阵,然后将该方阵转置(行列互换)后输出。 aij = i * n + j + 1(0in-1,0jn-1)#include int main(void) int i, j, n, temp; int a66; printf(“Enter n: ); scanf(%d, &n); /* 给二维数组赋值 略

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论