C语言平时作业4
C语言习题 (4)

a+b>c && b==c
!(a>b) && !c || 1
!(a+b) + c –1 && b + c/2
4.写出数学式子 的C语言表达式 。
5.将条件“y能被4整除但不能被100整除,或y能被400整除”写成逻辑表达式 。
a=(--y=x++) ? –y : ++x ;
b=y++ ; c=x ;
printf(“%d,%d,%d”,a,b,c);
}
A)6,9,7 B)6,9,6 C)7,9,6 D )7,9,7
16.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是 。
5.C语言对嵌套if语句的规定是:else总是与 。
A)其之前最近的if配对 B)第一个if配对
C)缩进位置相同的if配对 D)其之前最近的且尚未配对的if配对
6.设:int a=1,b=2,c=3,d=4,m=2,n=2;执行(m=a>b) && (n=c>d)后n的值为 。
A)1 B)2 C)3 D)4
7.下面 是错误的if语句(设int x,a,b;)
A)if (a=b) x++; B)if (a=<b) x++;
C)if (a-b) x++; D)if ( x ) x++;
下程序片段 。
main ( )
二.填空题
1.C语言提供6种关系运算符,按优先级高低它们分别是 , , , , , 等。
C语言试卷4

C语言模拟考试学号:4 姓名:童蕊蕊得分:1 ..................................................................单项选择以下叙述正确的是()。
A.用do-while语句构成的循环,在while后的表达式为非零时结束循环.B.do-while语句构成的循环不能用其它语句构成的循环来代替.C.用do-while语句构成的循环,在while后的表达式为零时结束循环D.do-while语句构成的循环只能用break语句退出.【评分报告得分:1.0 之 1.0 】【参考答案】正确C【学生答案】C假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是()。
A.2B.6C.8D.7【评分报告得分:0.0 之 1.0 】【参考答案】错误C【学生答案】[未答此题]以下选项中合法的实型常数是()。
A.E-3B..2E0C.1.3ED.5E2.0【评分报告得分:0.0 之 1.0 】【参考答案】错误B【学生答案】[未答此题]下面错误的说明语句是( ).A.int *a[10];B.int (*a)[10];C.int a['a'];D.int a[ ][ ];【评分报告得分:0.0 之 1.0 】【参考答案】错误D【学生答案】[未答此题]打开文件时,方式"w"决定了对文件进行的操作是()。
A.追加写盘B.只写盘C.可读可写盘D.只读盘【评分报告得分:0.0 之 1.0 】【参考答案】错误B【学生答案】[未答此题]能将高级语言编写的源程序转换为目标程序的是()。
A.编译程序B.链接程序C.解释程序D.编辑程序【评分报告得分:0.0 之 1.0 】【参考答案】错误A【学生答案】[未答此题]下面程序段运行的结果是( ).x=-1;do{x=x*x;}while (!x);A.循环执行一次B.有语法错误C.死循环D.循环执行两次【评分报告得分:0.0 之 1.0 】【参考答案】错误A【学生答案】[未答此题]若有以下的定义:int t[3][2];能正确表示t数组元素地址的表达式是()。
c语言程序设计形考任务4答案

一、选择题(共30分.每小题2分)题目1标记题目假定有“struct BOOK{char title[40]; float price;}; struct BOOK book;”.则不正确的语句为()。
选择一项:a. struct BOOK *x=malloc(book);回答正确b. struct BOOK x={"C++ Programming",27.0};c. struct BOOK *x=malloc(sizeof(struct BOOK));d. struct BOOK *x=&book;反馈Your answer is correct.题目2标记题目假定有“struct BOOK{char title[40]; float price;} book;”.则正确的语句为()。
选择一项:a. struct BOOK x= &book;b. struct BOOK *x=&book;回答正确c. struct BOOK x=calloc(BOOK);d. struct BOOK *x=BOOK;反馈Your answer is correct.题目3标记题目在结构类型的定义中.不同数据成员的定义项之间采用的分隔符是()。
选择一项:a. 句点b. 冒号c. 分号回答正确d. 逗号反馈Your answer is correct.题目4标记题目假定一个结构类型的定义为“struct A{int a,b; double c;};”.则该类型的长度为()。
选择一项:a. 8b. 10c. 12d. 16反馈Your answer is correct.题目5标记题目假定一个结构类型的定义为“struct D{int a; D* next;};”.则该类型的长度为()。
选择一项:a. 4b. 8回答正确c. 12d. 16反馈Your answer is correct.题目6标记题目假定要访问一个结构指针变量x中的数据成员a.则表示方法为()。
安徽大学 C语言平时作业

A) 1 B) 2 C) 3 D) 4
已知int i=10;表达式"20-0<=i<=9"的值是____。
A) 0 B) 1 C) 19 D) 20
已知int x=1,y;执行下述语句后变量x的值是____。
有如下的定义和输入语句:
int a1,a2;char c1,c2;
scanf("%d%d",&a1,&a2);
scanf("%c%c",&c1,&c2);
若要求a1,a2,c1,c2的值分别为10、20、A和B,则正确的数据输入方式为( )
A. 1020AB B. 10 20<CR>AB<CR>
C. 10 20 AB<CR> D. 10 20AB<CR>
A) 0 B) 1 C) 2 D)非法字符串
已知:char a;int b;float c;double d;执行语句"c=a+b+c+d;"后,变量c的数据类型是。
A) int B) char C) float D) double
逗号表达式"(a=3*5,a*4),a+15"的值是____。
A) 15 B) 60 C) 30 D)不确定
a一个主程序和若干子程序b若干子程序c函数d若干过程以下叙述中正确的是ac语言的源程序不必通过编译就可以直接运行bc语言中的每条可执行语句最终都将被转换成二进制的机器指令cc源程序经编译形成的二进制代码可以直接运行dc语言中的函数不可以单独进行编译下列关于c语言用户标识符的叙述中正确的是a用户标识符中可以出现下划线和数字它们都可以放在用户标识符的开头b用户标识符中可以出现下划线但不可以放在用户标识符的开头c用户标识符中不可以出现中划线但可以出现下划线d用户标识符中可以出现下划线和中划线减号以下说法中正确的是ac语言程序总是从第一个定义的函数开始执行bc语言程序中要调用的函数必须在main函数中定义cc语言程序总是从main函数开始执行dc语言程序中的main函数必须放在程序的开始部分一个c程序的执行是从a本程序的main函数开始到main函数结束b本程序文件的第一个函数开始到本程序文件的最后一个函数结束c本程序的main函数开始到本程序文件的最后一个函数结束d本程序文件的第一个函数开始到本程序main函数结束c语言编程整个操作的过程是a编辑编译链接执行b编译编辑链接执行c链接编译编辑执行d编辑链接编译执行下列说法不正确的是a链接操作将生成扩展名为
C语言习题4

第五章选择结构程序设计5.1 选择题【题5.1】逻辑运算符两侧运算对象的数据类型。
A)只能是0或1B)只能是0或非0正数C)只能是整型或字符型数据D)可以是任何类型的数据【题5.2】以下关于运算符优先顺序的描述中正确的是。
A)关系运算符<算术运算符<赋值运算符<逻辑与运算符B)逻辑与运算符<关系运算符<算术运算符<赋值运算符C)赋值运算符<逻辑与运算符<关系运算符<算术运算符D)算术运算符<关系运算符<赋值运算符<逻辑与运算符【题5.3】下列运算符中优先级最高的是。
A)< B)+ C)&& D)!=【题5.4】能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的表达式是。
A)(x>=1)&&(x<=10)&&(x>=200)&&(x<=210)B)(x>=1)||(x<=10)||(x>=200)||(x<=210)C)(x>=1)&&(x<=10)||(x>=200)&&(x<=210)D)(x>=1)||(x<=10)&&(x>=200)||(x<=210)【题5.5////////Xa b cA)(x<=a)&&(x>=b)&&(x<=c)B)(x<=a)||(b<=x<=c)C)(x<=a)||(x>=b)&&(x<=c)D)(x<=a)&&(b<=x<=c)【题5.6】判断char型变量ch是否为大写字母的正确表达式是。
A)‘A’<=ch<=‘Z’B)(ch>=‘A’)&(ch<=‘Z’)C)(ch>=‘A’)&&(ch<=‘Z’) D)(‘A’<=ch)AND(‘Z’>=ch)【题5.7】设x、y和z是int型变量,且x=3,y=4,z=5,则下面表达式中值为0的是。
山东科技大学C语言作业四

Problem A: 只有一个二元运算符的表达式运算Time Limit: 1 Sec Memory Limit: 2 MBSubmit: 5044 Solved: 1937[Submit][Status][Web Board]Description编程序读入并计算只有一个二元运算符的表达式的值。
用到的二元运算符有:“+”、“-”、“*”、“/”、“%”,与C语言的语法一致。
Input每行输入一个表达式,格式为:二个整型的操作数a和b,中间用一个符号分开,这个符号就是运算符。
测试样例不存在除数为0的情况。
输入以a和b为0,且用一个空格分开结束。
Output每行对应输入的运算符为“+”、“-”、“*”、“/”、“%”,则计算a+b、a-b、a*b、a/b、a%b的值;否则输出“invalid op”。
Sample Input33+58*92.21-617/39%30 0Sample Output3872invalid op-55#include<stdio.h>#include<math.h>void main(){int i,a,b;char c;for(i=0;i<=100;i++){for(;scanf("%d%c%d",&a,&c,&b)!=EOF;) if(a==0&&c==' '&&b==0)goto loop;elseswitch(c){case'+':printf("%d\n",a+b);break;case'-':printf("%d\n",a-b);break;case'*':printf("%d\n",a*b);break;case'/':printf("%d\n",a/b);break;case'%':printf("%d\n",a%b);break;default:printf("invalid op\n");}}loop:i=101;}Problem B: 摄氏——华氏温度转换表Time Limit: 1 Sec Memory Limit: 2 MBSubmit: 6632 Solved: 1711[Submit][Status][Web Board]Description已知华氏温度F,转换为摄氏温度C的公式为C=(F-32)*5/9。
C语言平时作业4
return 0;
}
截图
ans+=fun(i+1,a);
return ans;
}
int main(void)
{
double ans;
int n,k;
scanf("%d%d",&n,&k);
ans=sum(n,k);
printf("%lf\n",ans);
return 0;
}
截图
题目二:利用求n!的函数(double fun(int n))和求x的y次方的函数(double pow(int x,int y))。再次计算sin(x)的值。并用标准函数对同一角度求sin值,进行校对比较。
程序:
#include <stdio.h>
double fun(int n,int k)
{
double ans=0;
int i;
for(i=0;i<n;i++)
ans=ans*10+k;
return ans;
}
double sum(int n,int a)
{
double ans=0;
int i;
for(i=0;i<n;i++)
程序:
#include <stdio. Nhomakorabea>
#define MAX 100
int main(void)
{
int i=1;
double x,a,b=1,s=0;
scanf("%lf",&x);
c语言程序设计形考任务4答案培训讲学
c语言程序设计形考任务4答案一、选择题(共30分,每小题2分)题目1正确获得2.00分中的2.00分标记题目题干假定有“struct BOOK{char title[40]; float price;}; struct BOOK book;”,则不正确的语句为()。
选择一项:a. struct BOOK *x=malloc(book);回答正确b. struct BOOK x={"C++ Programming",27.0};c. struct BOOK *x=malloc(sizeof(struct BOOK));d. struct BOOK *x=&book;反馈Your answer is correct.题目2正确获得2.00分中的2.00分标记题目题干假定有“struct BOOK{char title[40]; float price;} book;”,则正确的语句为()。
选择一项:a. struct BOOK x= &book;b. struct BOOK *x=&book;回答正确c. struct BOOK x=calloc(BOOK);d. struct BOOK *x=BOOK;反馈Your answer is correct.题目3正确获得2.00分中的2.00分标记题目题干在结构类型的定义中,不同数据成员的定义项之间采用的分隔符是()。
选择一项:a. 句点b. 冒号c. 分号回答正确d. 逗号反馈Your answer is correct.题目4正确获得2.00分中的2.00分标记题目题干假定一个结构类型的定义为“struct A{int a,b; double c;};”,则该类型的长度为()。
选择一项:a. 8b. 10c. 12d. 16反馈Your answer is correct.题目5正确获得2.00分中的2.00分标记题目题干假定一个结构类型的定义为“struct D{int a; D* next;};”,则该类型的长度为()。
C语言第4次作业运算符与
C语言第4次作业运算符与目单选题:1、若变量c为char类型,能正确判断出c为小写字母的表达式是A. 'a'<=c<= 'z'B. (c>= 'a')||(c<= 'z')C. ('a'<=c)and ('z'>=c)D. (c>= 'a')&&(c<= 'z')学生答案:D参考答案:D2、以下程序的输出结果是mai n(){ int x=0.5; char z='a';printf("%d\n", (x& 1)&&(z<'z') ); }A. 0B. 1C. 2D. 3学生答案:A参考答案:B3、C语言中运算对象必须是整型的运算符是A. %=B. /C. =D. 〈二学生答案:A参考答案:A4、有如下程序段int a=14,b=15,x;char c='A';x=(a&&b)&&(cv'B');执行该程序段后,x的值为A. tureB. falseC. 0D. 1学生答案:D参考答案:D5、设有int x=11; 则表达式(x++ * 1/3) 的值是A. 3B. 4C. 11D. 12学生答案: A参考答案: A6、设int x=1, y=1; 表达式(!x||y--) 的值是A. 0B. 1C. 2D. -1学生答案: B参考答案: B7、下列程序的运行结果是#include < stdio.h > main() { int a=2,c=5; printf("a=%d,b=%d\n",a,b);}A. a=%2,b=%5B. a=2,b=5C. a=d, b=dD. a=%d,b=%d学生答案: B参考答案: B8、判断字符型变量x 是否是大写字母的正确表达式是___A. 'A' <= x <='z'B. (x>=A) && (x <= Z)C. ('A'<= x) && ('Z' >= x)D. (x >='A') && (x <='Z')学生答案: D参考答案: D9、若已定义X和丫为double型,则表达式:x=1,y=x+3/2的值是 _____A. 1B. 2C. 2.0D. 2.5学生答案: C参考答案: c10、设有以下定义:int x=10,y=3,z;printf("%d\n",z=(x%y,x/y))的输出结果是 ____A. 1B. 0C. 4D. 3学生答案: D参考答案: D11、设ch是char型变量,其值为A,且有下面的表达式: ch=(ch>='A'&&ch<='Z')?(ch+32):ch上面表达式的值是A. AB. aC. ZD. z学生答案: B参考答案: B12、若有说明和语句:int a=5;a++;此处表达式a++的值是A. 7B. 6C. 5D. 4学生答案: C参考答案: C13、假定有以下变量定义:int k=7 ,x=12;则能使值为 3 的表达式是_________ 。
网络教育 C语言程序设计满分作业4
网络教育 C语言程序设计满分作业4作业名称:C语言程序设计2013秋第一套作业出卷人:SA作业总分:100 通过分数:60起止时间:2014-1-21 14:36:28 至 2014-1-21 15:05:54学员姓名:hhh201309 学员成绩:100标准题总分:100 标准题得分:100详细信息:题号:1 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:6.25 内容:二进制语言是属于A、面向机器的语言B、面向过程的语言C、面向问题的语言D、面向汇编语言标准答案:A学员答案:A说明:C语言程序设计/C语言概述本题得分:6.25题号:2 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:6.25 内容:下列选项中,不合法的C语言关键字是A、autoB、 defaultC、 staticD、 var标准答案:D学员答案:D说明:C语言程序设计/C语言概述本题得分:6.25题号:3 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:对C语言源程序执行过程描述正确的是( )A、从main() 函数开始执行,到main()函数结束B、从程序的第一个函数开始执行,到最后一个函数结束C、从main函数开始执行,到源程序的最后一个函数结束D、从第一个函数开始执行,到main函数结束标准答案:A学员答案:A说明:C语言程序设计/C语言概述/C程序组成本题得分:3.12题号:4 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:C语言规定:在一个源程序中,main函数的位置( )A、必须在最开始B、必须在系统调用的库函数的后面C、可以任意D、必须在最后标准答案:C学员答案:C说明:C语言程序设计/C语言概述/主函数本题得分:3.12题号:5 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:C语言提供的合法关键字是( )A、breakB、printC、funtionD、end标准答案:A学员答案:A说明:C语言程序设计/C语言概述/C程序关键字本题得分:3.12题号:6 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:不属于面向机器语言的是( )A、符号语言B、二进制语言C、汇编语言D、C语言标准答案:D学员答案:D说明:C语言程序设计/C语言概述/C程序特点本题得分:3.12题号:7 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:程序段的基本结构中,不包含( )A、函数结构B、循环结构C、顺序结构D、分支结构标准答案:A学员答案:A说明:C语言程序设计/C语言概述/C程序组成本题得分:3.12题号:8 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:6.25 内容:以下那一个不是C语言合法的关键字A、switchB、 charaterC、 intD、 double标准答案:B学员答案:B说明:C语言程序设计/C语言概述本题得分:6.25题号:9 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:一个C程序的执行是从( )A、本程序的main函数开始,到main函数结束B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C、本程序的main函数开始,到本程序文件的最后一个函数结束D、本程序文件的第一个函数开始,到本程序main函数结束标准答案:A学员答案:A说明:C语言程序设计/C语言概述/主函数本题得分:3.12题号:10 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:以下叙述不正确的是( )A、一个C源程序可由一个或多个函数组成B、一个C源程序必须包含一个main函数C、C程序的基本组成单位是函数D、在C程序中,注释说明只能位于一条语句的后面标准答案:D学员答案:D说明:C语言程序设计/C语言概述/C程序组成本题得分:3.12题号:11 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:C语言源程序的最小单位是( )A、程序行B、语句C、函数D、字符标准答案:D学员答案:D说明:C语言程序设计/C语言概述/C程序组成本题得分:3.12题号:12 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:下列字符串是标识符的是( )A、_HJB、9_studentC、longD、LINE 1标准答案:A学员答案:A说明:C语言程序设计/C语言概述/C程序标识符本题得分:3.12题号:13 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:下列四组选项中,均不是C语言关键字的选项是( )A、define,IF,typeB、getc,char,printfC、include,scanf,caseD、while,go,pow标准答案:A学员答案:A说明:C语言程序设计/C语言概述/关键字本题得分:3.12题号:14 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:下列字符串属于标识符的是( )A、INTB、5_studentC、2ongD、!DF标准答案:A学员答案:A说明:C语言程序设计/C语言概述/C程序标识符本题得分:3.12题号:15 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:将高级语言编写的程序翻译成目标程序的程序是( )A、解释B、编译C、汇编D、二进制标准答案:B学员答案:B说明:C语言程序设计/C语言概述/C程序执行本题得分:3.12题号:16 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:不属于高级语言的是( )A、BASICB、CC、ALGOLD、符号语言标准答案:D学员答案:D说明:C语言程序设计/C语言概述/C程序特点本题得分:3.12题号:17 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:将汇编语言编写的程序翻译成目标程序的程序是( )A、解释B、编译C、汇编D、目标标准答案:B学员答案:B说明:C语言程序设计/C语言概述/C程序执行本题得分:3.12题号:18 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:以下叙述正确的是( )A、在C程序中,main函数必须位于程序的最前面B、在C程序的每一行只能写一条语句C、C语言本身没有输入输出语句D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误标准答案:C学员答案:C说明:C语言程序设计/C语言概述/主函数本题得分:3.12题号:19 题型:单选题(请在以下几个选项中选择唯一正确答案)本题分数:3.12 内容:以下对C语言描述中正确的是( )A、C语言源程序中可以有重名的函数B、C语言源程序中要求每行只能书写一条语句C、C语言源程序中,注释可以出现在任何位置D、最小的C源程序中没有任何内容标准答案:C学员答案:C说明:C语言程序设计/C语言概述/C程序组成本题得分:3.12题号:20 题型:多选题(请在复选框中打勾,在以下几个选项中选择正确答案,答案可以是多个)本题分数:3.12内容:以下能对一维数组a进行正确初始化的语句是( )A、int a[10]=(0,0,0)B、int a[10]={}C、int a[]={0}D、int a[10]={10*1}标准答案:CD学员答案:CD说明:C语言程序设计/数组/一维数组的初始化本题得分:3.12题号:21 题型:是非题本题分数:6.25内容:在一个函数内部的复合语句中定义的变量,只在该复合语句范围内有效1、错2、对标准答案:2学员答案:2说明:C语言程序设计/函数本题得分:6.25题号:22 题型:是非题本题分数:6.25内容:C语言中,函数可以嵌套定义1、错2、对标准答案:1学员答案:1说明:C语言程序设计/函数本题得分:6.25题号:23 题型:是非题本题分数:6.25内容:C语言中输入输出是通过函数完成的1、错2、对标准答案:2学员答案:2说明:C语言程序设计/函数本题得分:6.25题号:24 题型:是非题本题分数:3.12内容:double fun(int x,int y){double z;z=x+y;return z;}是正确的函数形式1、错2、对标准答案:2学员答案:2说明:C语言程序设计/函数/函数的一般形式本题得分:3.12题号:25 题型:是非题本题分数:6.25内容:C语言中形参到实参传递是双向的1、错2、对标准答案:1学员答案:1说明:C语言程序设计/函数本题得分:6.25。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
count++; printf("%4d(%d)",a1[i][j],count);} printf("\n");} }
四、源程序调试过程(或运行结果) 对程序编译、连接、运行,得到如下结果:
创建时间:2013-6-4
五、实验小结(体会): 1、掌握了数组元素指针的使用。 2.2、握了数组的定义、初始化、以及数组元素的引用方法 3、掌握了顺序文件在程序程序设计中的应用
创建时间:2013-6-4
void MakeArray(int **a1,int s,int n,int t); void CountArray(int **a1,int s,int n); int row,col,t; int **pArr,i; printf("输入地雷的行和列以及地雷数:");
scanf("%d,%d,%d",&row,&col,&t); pArr=(int**)malloc(row*sizeof(int*)); for(i=0;i<row;i++) pArr[i]=(int*)malloc(col*sizeof(int)); for(i=0;i<row;i++) for(int j=0;j<col;j++)
2、理解数组单元的存储特点及下标范围取值和访问方法;
3、掌握理解数组与指针的概念及两者之间的联系;
4、掌握指向数组元素指针的使用;
5、掌握用指向数组指针变量表示数组的数组元素及其操作方法;
6、掌握用指针形式参数在函数间传递数组实际参数的方法。
7、熟悉并掌握动态数组的创建方式及元素访问方法。
二、实验项目内容(实验题目)
13 年 6 月 4 日
实验地点
DS1421
实验成绩
实验性质 □验证性 □设计性 √ 综合性
教师评价:
□算法/实验过程正确; □源程序/实验内容提交 □程序结构/实验步骤合理;
□实验结果正确;
□语法、语义正确;
□报告规范;
其他:
评价教师签名:
一、实验目的
1、掌握二维数组或多维数组的定义和初始化方法;
创建时间:2013-6-4
for(i=0;i<s;i++) {for(j=0;j<n;j++)
{count=0; for(int l=0;l<s;l++)
for(int t=0;t<n;t++) if((i-l)*(i-l)+(j-t)*(j-t)<=2 &&(i-l)*(i-l)+(j-t)*(j-t)!=0 &&a1[l][t]==9)
if (a1[k/n][k%n]!=9) {a1[k/n][k%n]=9;count++;} }while(count<t); } void PrintArray(int **a1,int s,int n) { for(int i=0;i<s;i++) { for(int j=0;j<n;j++) printf("%4d",a1[i][j]); printf("\n"); } } void CountArray(int **a1,int s,int n) {int i,j,count;
三、源程序(实验过程或算法) 对实验报告内容所述的题目进行分析求解,得出如下 C 源程序:
#include<stdio.h> #include<stdlib.h> #include<time.h>
创建时间:2013 年 6 月 4 日星期二
void main() { void PrintArray(int **a1,int s,int n);
模拟“地雷游戏”。在 M*N 的方格中,随机布上 dn 个“地雷”,按 M 行 N 列输出各格子的 数(有雷为 9(或‘*’),无雷为 0)。在有相邻地雷的格子内进一步标出相邻地雷数。要求: 1)“雷区”方阵的大小 M 和 N 在程序运行过程中通过键盘输入。 2) 地雷的个数 dn 在程序运行中指定。 3) 地雷的个数 dn 必须与指定的个数相同。 实验参考提示:以实验书 P27 页上的程序为基础,加“可变动态数组”实现。