-
2018-10-05 17:03:58
SCAU高级语言程序设计--实验6 循环结构(二)(3)
三、单元测试
题目:打印星号空心菱形
思路:这次参考实验6堂上限时习题2了。
修改地方2个:
1)一个是行数判断。n=m/2+1;
2)输入样式加入一个头尾判断。
#include<stdio.h> #include<stdlib.h> int main() { int m,n,i,j; scanf("%d",&m);//输入半层数,例如上图为4. n = m/2+1;//修改的算法 for(i=1-n;i<=n-1;i++){//第几层、 //空格输出 for(j=0;j<abs(i);j++) printf(" ");//先输入空格 //图案输出 for(j=0;j<2*(n-abs(i))-1;j++) if(j==0 || j==2*(n-abs(i))-2 ) printf("*");//头尾输入*数 else printf(" ");//中间输出空格 //结束后换行 printf("\n");//记得换行 } return 0; }
更多相关内容 -
SCAU高级语言程序设计--实验1
2018-10-01 22:32:55SCAU高级语言程序设计 实验1 C语言程序初步 一、堂上限时习题 1.第一个C程序 /*显示The first C Program*/ #include <stdio.h> //编译预处理命令 int main()//定义主函数main() { printf("...SCAU高级语言程序设计
实验1 C语言程序初步
一、堂上限时习题
1.第一个C程序
/*显示The first C Program*/ #include <stdio.h> //编译预处理命令 int main()//定义主函数main() { printf("The first C Program\n");//调用printf()函数输出文字,输出文字后换行。 return 0;//主函数返回一个整数0 }
注意:头文件.h文件相当于工具箱,printf()函数是.h里面的一个工具,作用是打印。
2.计算a+b
题目:由键盘输入两个整数,计算并输出两个整数的和。
思路:1.定义两个变量。2.输入函数。3.运算。4.输出函数
/*版本1*/ #include<stdio.h> int main() { int a,b;//定义两个整数变量,数据类型为int int sum;//定义输入结果变量,数据类型为int scanf("%d%d",&a,&b);//输入函数scanf(),从键盘输入a与b两个数 sum = a + b;//两数运算相加,结果给sum printf("%d\n",sum);//打印结果。 return 0; } /*版本2*/ #include<stdio.h> int main() { int a,b; scanf("%d%d",&a,&b); printf("%d\n",a+b);//printf()函数中可以直接运算 return 0; }
注意:1.scanf()函数,需要输入多少个数就有多少个%d,然后变量前面记得加&,指明是给哪个变量输入哪个数。
(书本P25 2.3.4)
2.printf()函数输入可以直接进行简单的运算。
二、堂下练习
输出a与b的较大值。
题目:由键盘输入两个整数a和b,判断并输出a与b中较大值。
/*版本1*/ #include<stdio.h> int main() { int a,b; scanf("%d%d",&a,&b); if(a >= b)//判断a与b的大小,注意考虑等于的情况 { printf("%d\n",a); } else { printf("%d\n",b); } return 0; } /*版本2*/ #include<stdio.h> int main() { int a,b; scanf("%d%d",&a,&b); printf("%d\n",a>=b?a:b);//利用三目运算符 return 0; } /*版本3*/ #include<stdio.h> #include<stdlib.h> int main() { int a,b; scanf("%d%d",&a,&b); printf("%d\n",max(a,b));//利用三目运算符 return 0; }
注意:1、新手版利用if-else语句判断。
2、版本2利用三目运算符,条件表达式的另外一种表达明显代码量短很多。(可参考书本P132)
3、注意加头文件stdlib.h
-
SCAU高级语言程序设计--实验2基本类型与运算
2018-10-04 15:42:39SCAU高级语言程序设计--实验2基本类型与运算 一、堂上限时联系 1.变量定义,按要求完成程序 问题:下面给出一个程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。 #include "stdio.h" ...SCAU高级语言程序设计--实验2基本类型与运算
一、堂上限时联系
1.变量定义,按要求完成程序
问题:下面给出一个程序,但是缺少部分语句,请按右边的提示补充完整缺少的语句。
#include "stdio.h"
main()
{
_______________________ /*定义整型变量a和b*/
_______________________ /*定义浮点变量i和j*/
a=5;
b=6;
i=3.14; j=i*a*b;
printf("a=%d,b=%d,i=%.2f,j=%.2f\n", a, b, i, j);
}#include <stdio.h> int main() { int a,b; /*定义整型变量a和b*/ double i,j; /*定义浮点变量i和j*/ a=5; //初始化a b=6; //初始化b i=3.14; j=i*a*b; printf("a=%d,b=%d,i=%.2f,j=%.2f\n", a, b, i, j); //%.2f为显示结果保留两位小数 }
注意:关于printf()函数的输出格式控制说明%m.nf。m为小数点前实际位数,n为保留n位小数。(可参考书本P120页)
2.在显示屏上显示指定字符。
问题:要求编写一个程序,在显示屏上显示如下内容(全为半角字符,且不包含空格):
C:\ABC.TXT
[提示] 注意转义字符在程序中的使用。
#include <stdio.h> int main() { printf("C:\\ABC.TXT\n");//printf()函数中转义字符的使用 return 0; }
注意:有一些字符,回车,退格之类等控制码,不能再屏幕上显示,也无法从键盘输入,所以用另外一种方式去表示,我们称转义字符。这里“:”与“. ”不需要转义,直接可打印,而“\”,需要转义为“\\”(转义字符表可参P117)
3.基本运算,写出运算结果
题目:阅读下面程序,写出运行结果:
程序到此结束 请用下面程序输出你的答案(注意转义字符的正确表达)
#include "stdio.h"
main()
{
printf("_______________________");
}#include <stdio.h> int main(){ printf("0,2,1,15.000000,1.000000,1.500000"); return 0; }
解析:1)a取余数。
2)b取商,且不用四舍五入。
3)c=b++,先执行c=b,在执行b = b+1。
4)double和float类型数据打印默认打印小数点后6位,想显示更多,可用%.nf的形式。
5)15/10属与整型,取商后,显示小数点后6位。
6)d/10,属于float类型之间的运算,所以可实现显示小数。
二、赋值表达式与赋值语句,写出程序运行结果。
题目:阅读下面程序,写出运行结果:
程序到此结束 请用下面程序输出你的答案(注意转义字符的正确表达)
#include "stdio.h"
main()
{
printf("_______________________");
}#include <stdio.h> int main(){ printf("3.500000,3,330,J,a"); return 0; }
解析:1)330转为二进制位0001 0100 1010,因为只识别低8位,查看ASCII码,得为J
2)\141 说的是 141这个表示的八进制数字符,将这个八进制的 141,转成十进制 就是 97,查看ASCII码,97 就是 a,所以会输出字符a。
-
SCAU高级语言程序设计--实验12 文件操作(1)
2018-10-07 21:06:53SCAU高级语言程序设计--实验12 文件操作(1) 一、堂上限时习题 1、文本文件操作 字符读入 题目:当前目录中存在文件名为"case1.in"的文本文件,现要求你使用fopen函数命令打开该文件,读出里面的所有...SCAU高级语言程序设计--实验12 文件操作(1)
一、堂上限时习题
1、文本文件操作 字符读入
题目:当前目录中存在文件名为"case1.in"的文本文件,现要求你使用fopen函数命令打开该文件,读出里面的所有字符, 遇到大写字母的,将其变为小写字母,其它字符不变,最后将所有字符按顺序在屏幕上输出。请填空完成程序, (注意,填空题,请不要使用return 0结束,否则会影响评判而判错)
(如case1.in内容如下) Hello my Dear: Have a GooD Time! (在屏幕上输出结果如下) hello my dear: have a good time! (提示,在提交前要测试自己的代码是否正确,可在源文件所有目录自己创建一个名为case1.in的文本文件, 在文件中自己打入一些字母,以便测试自己的代码是否正确)
#include "stdio.h"
main()
{
FILE *fp;
char ch;
if((_______________________)==NULL)
return 0;
while(_______________________)
{
if ('A'<=ch && ch<='Z')
ch = ch + 32;
_______________________;
}
fclose(fp);
}#include <stdio.h> main (){ FILE *fp; char ch; if((fp=fopen("data1.in","r"))==NULL)//判断文件是否为空 return 0; while((ch=fgetc(fp))!=EOF){//判断是否能在文件中取到值 if(ch>='A'&&ch<='Z')//判断大写 ch=ch + 'a' - 'z'; putchar(ch);//打印在屏幕上 } fclose(fp); }
注意:这里只是把文件中的字符取出来,大写改成小写,但是文件中的字符并没有改变。
2、文本文件操作 字符写入
题目:由键盘输入任意个字符(以连着的三个小写字符bye做为结束标志),将所有字符(包括bye),写入新建的文件answer.txt中(注:文件放在当前目录)。 请完成该功能,(注意,填空题,请不要使用return 0结束,否则会影响评判而判错)
(如键盘输入内容如下) He, can you write the code? Yes, you can.bye No, you can't. (程序执行后,在文件answer.txt中内容如下) He, can you write the code? Yes, you can.bye (注:因No, you can't.在bye之后,所以不输出) (注:代码中不要使用return及exit()函数,以免误判)
#include "stdio.h"
main()
{
_______________________
}思路:首先读取打开文件,然后字符提取到ch,每次提取一个。ch1,ch2,ch3组成bye的时候,就停止写入,最后关闭文件。
#include<stdio.h> main (){ FILE *fp; char ch,ch1='',ch2='',ch3=''; if((fp=fopen("answer.txt","w"))==NULL)//打开文件 return 1; while((ch=getchar())!=EOF){//键盘输入字符 fputc(ch,fp);//键盘输入字符写入文件 ch1=ch2; ch2=ch3; ch3=ch; if(ch1=='b'&&ch2=='y'&&ch3=='e') break; } fclose(fp);//关闭文件 }
-
SCAU高级语言程序设计--实验7 数组的应用(1)
2018-10-05 17:32:18SCAU高级语言程序设计--实验7 数组的应用(1) 一、堂上限时习题 1、倒序 题目:由键盘输入10个整数,倒序输出。 思路:数组的写入需要用循环语句。输出也一样。 #include<stdio.h> int main ()... -
SCAU高级语言程序设计--实验7 数组的应用(2)
2018-10-05 21:12:10SCAU高级语言程序设计--实验7 数组的应用(2) 二、堂下练习 1、统计不同数字个数 题目:由键盘输入20个整数,统计不同数字的个数。 思路:可看程序解析 #include<stdio.h> int main(){ int a... -
SCAU高级语言程序设计--实验5 循环结构(一)(3)
2018-10-05 15:33:40SCAU高级语言程序设计--实验5 循环结构(一)(3) 题目:计算成绩平均分 输入10个学生成绩(浮点数),要求计算并输出平均分(保留两位小数位) 思路:简单,注意浮点数和保留两位小数就可以了。 #include&... -
SCAU高级语言程序设计--实验5 循环结构(一)(1)
2022-03-07 20:30:55SCAU高级语言程序设计--实验5 循环结构(一)(1) 一、堂上限时习题 1、计算阶乘 题目:输入正整数n(n<12),计算n!(注n!=1*2*3*...*n) 思路:循环乘而已 int main(){ int m,i,sum=1; scanf("%d", &... -
高级程序语言设计.期末综合性实验.rar
2021-07-15 22:02:47SCAU的高级程序语言设计,期末综合性实验。 题目是:文件操作与字符处理 资源是一个rar文件,因为里面有两个文件的,用WIN.rar解压了就好。 包括: 实验程序(运行程序,用DEV写的) 综合性实验报告(根据上面的代码... -
SCAU高级语言程序设计--实验10 指针与结构体(1)
2018-10-06 01:33:51SCAU高级语言程序设计--实验10 指针与结构体(1) 一、堂上限时习题 1、交换两数,由大到小输出 题目:下面程序,交换两数,使两数由大到小输出,请填空 #include "stdio.h" void swap(__________... -
SCAU高级语言程序设计--实验3 基本输入与输出
2018-10-04 16:49:27SCAU高级语言程序设计--实验3 基本输入与输出 一、堂上限时习题 1.字符的输入与输出 /*版本1*/ #include<stdio.h> int main(){ char a; scanf("%c",&a); printf("%c\n&... -
SCAU高级语言程序设计--实验11 链表操作(1)
2018-10-11 01:00:51SCAU高级语言程序设计--实验11 链表操作(1) 一、堂上限时习题 1、链表的合并 题目:下面程序创建两个链表,然后将第二个链表合并到第一个链表未尾,但合并部分的代码未完成,请你完成这部分代码。 #include ... -
SCAU高级语言程序设计--实验11 链表操作(2)
2018-10-11 10:54:38SCAU高级语言程序设计--实验11 链表操作(2) 二、堂下练习 1、链表结点的插入 题目:完成插入链表结点的函数(按学号顺序),并调试通过、提交。 #include "stdio.h" #include "malloc.h"... -
SCAU高级语言程序设计--实验6 循环结构(二)(1)
2018-10-05 16:27:31SCAU高级语言程序设计--实验6 循环结构(二)(1) 一、堂上限时习题 1、求素数 题目:输出2到200之间(包括2、200)的所有素数(注:要求1行1个素数,按由小到大的顺序输出)。 思路:因数都是成对出现的。比如... -
SCAU高级语言程序设计--实验9 函数的应用(2)
2018-10-06 01:33:46SCAU高级语言程序设计--实验9 函数的应用(2) 二、堂下练习 1、函数定义 题目:下面是使用辗转相除法,求最大公约数的程序,请补充完整程序中函数的定义与调用,运行通过后提交代码。 #include "stdio.h&... -
SCAU高级语言程序设计--实验4 选择结构(2)
2018-10-04 20:11:38SCAU高级语言程序设计--实验4 选择结构(2) 二、堂下练习 1、判断整数是否为平方数 题目:由键盘输入一个正整数,判断该数是否为平方数,是输出Y,否则输出N 思路:先开平方,再平方即可,因为如果不能开平方,... -
SCAU高级语言程序设计--实验12 文件操作(2)
2018-10-10 08:04:43SCAU高级语言程序设计--实验12 文件操作(2) 二、堂下练习 1、文本文件操作---读取与选择显示 题目: 在当前目录中存在文件名为"case1.in"的文本文件,现要求打开该文件,读出里面的所有字符,只将... -
SCAU高级语言程序设计--实验4 选择结构(3)
2018-10-05 10:20:17SCAU高级语言程序设计--实验4 选择结构(3) 三、单元测试:长方体与圆球 题目:由键盘输入一个形如长方体的盒子的长、宽、高,以及一个圆球的半径,判断该盒子能否完全装下圆球,能输出Y,否则输出N。 思路:... -
SCAU高级语言程序设计--实验10 指针与结构体(2)
2018-10-06 01:33:56SCAU高级语言程序设计--实验10 指针与结构体(2) 二、堂下练习 1、字符串与指针 题目: 请写出下列程序的运行结果 #include<stdio.h> int main( ) { char string[30]="How_are_you" ... -
SCAU高级语言程序设计--实验4 选择结构(1)
2018-10-04 19:39:17SCAU高级语言程序设计--实验4 选择结构(1) 一、堂上限时习题 1、数的排序 题目:由键盘输入三个整数a、b、c,按从小到大的顺序输出这三个数。 思路:两个两个数一一对比。 #include<stdio.h> ... -
SCAU高级语言程序设计--实验9 函数的应用(1)
2018-10-06 01:33:41SCAU高级语言程序设计--实验9 函数的应用(1) 一、堂上限时习题 1、编写函数计算阶乘 题目:下面程序实现由键盘读入整数n,计算并输出n!,请补充完整计算阶乘的函数。 #include "stdio.h" _______... -
SCAU高级语言程序设计--实验8 字符数组及串(1)
2018-10-06 01:33:27SCAU高级语言程序设计--实验8 字符数组及串(1) 一、堂上限时习题 1、定义存贮字符串的字符数组 题目:在下面程序中填充定义字符数组的语句,使程序完整。 #include "stdio.h" #include "... -
SCAU高级语言程序设计--实验5 循环结构(一)(2)
2018-10-05 15:24:51SCAU高级语言程序设计--实验5 循环结构(一)(2) 二、堂下练习 1、字符变换 题目:由键盘输入一个句子(字符个数不定,最多不超过80个,以'\n'结束),将其中的大写字符变成小写(其它类型的字符不变), 最后... -
SCAU高级语言程序设计--实验8 字符数组及串(2)
2018-10-06 01:33:34SCAU高级语言程序设计--实验8 字符数组及串(2) 二、堂下练习 1、字符串的合并 题目:从键盘输入3个字符串(每个字符串以回车符做为结束标志),将3个字符串以输入先后顺序合并到字符串s中, 请填空使用程序完整... -
SCAU高级语言程序设计--实验7 数组的应用(3)
2018-10-05 21:12:00SCAU高级语言程序设计--实验7 数组的应用(3) 三、单元测试 题目:由键盘输入正数n(n<30),要求输出具有n行的杨辉三角。 思路:rows为行数。把整个杨辉三角的数,看成二维数组。另外,每行头尾的数为1... -
SCAU高级语言程序设计--实验6 循环结构(二)(2)
2018-10-05 16:52:34SCAU高级语言程序设计--实验6 循环结构(二)(2) 二、堂下练习 1、找满足要求的数字 题目:输出1到9999中能被7整除,而且至少有一位数字是5的所有数字 思路:判断一个数字中是否有5,首先要掌握拆数字的方法。...