C语言编程 菜鸟练习100题(01-10)

【练习1】输出 "Hello, World!"

0. 题目:
输出 "Hello, World!"
1. 分析:
使用 printf() 输出 "Hello, World!"。
2. 程序:

#include <stdio.h> int main() { printf("Hello, World!"); // printf() 中字符串的前后需要使用双引号 return 0; }

3. 输入输出:

Hello, World!

4. 扩展知识:
printf() 是头文件 stdio.h 中定义的函数,调用格式为:

printf("<格式化字符串>", <参量表>);

【练习2】输出整数

0. 题目:
输出整数
1. 分析:
使用 printf() 与 %d 格式化输出整数。
2. 程序:

#include <stdio.h> int main() { int intNum; // 声明 int 变量 printf("输入一个整数: "); // printf() 输出字符串 scanf("%d", &intNum); // scanf() 格式化输入,"%d"表示整数格式 printf("输入的整数是: %d", intNum); // printf() 显示格式化输入 return 0; }

3. 输入输出:

输入一个整数: 255
输入的整数是: 255

4. 扩展知识:
scanf() 是头文件 stdio.h 中定义的函数,从标准输入 stdin 读取格式化输入。

【练习3】输出单个字符

0. 题目:
输出单个字符
1. 分析:
使用 printf() 与 %c 格式化输出一个字符。
2. 程序:

#include <stdio.h> int main() { char oneChar; // 声明 char 变量 oneChar = \'C\'; // 向变量赋值 printf("oneChar 的值为 %c", oneChar); // printf() 格式化输出 return 0; }

3. 输入输出:

oneChar 的值为 C

4. 扩展知识:

基本数据类型
int:整型
short:短整型
long:长整型
float:浮点型(单精度)
double:浮点型(双精度)
char:字符型
void:无类型

【练习4】输出浮点数

0. 题目:
输出浮点数
1. 分析:
使用 printf() 与 %f 输出浮点数。
2. 程序:

#include <stdio.h> int main() { float fVar1,fVar2; // 声明浮点数变量 fVar1 = 12.00123; // 向变量赋值 printf("fVar1 的值为 %f\n", fVar1); // printf() 格式化输出 fVar2 = 123.001234; // 向变量赋值 printf("fVar2 的值为 %f\n", fVar2); // printf() 格式化输出 return 0; }

3. 输入输出:

fVar1 的值为 12.00123
fVar2 的值为 123.001236

【注意!】 fVar1 的值与赋值完全相同,但 fVar2 的的值与赋值不完全相同。这是因为 float 为单精度浮点数,内存中占 4个字节,有效数位是 7位。如果有效数字位数超过 7位,超出的部分会自动四舍五入。

【练习5】输出双精度数

0. 题目:
输出双精度数
1. 分析:
使用 printf() 与 %e 输出双精度数。
2. 程序:

#include <stdio.h> { double dVar1,dVar2; // 声明浮点数变量 dVar1 = 12.00123; // 向变量赋值 printf("dVar1 的值为 %Lf\n", dVar1); // 格式化输出:长实数 printf("dVar1 的值为 %Le\n", dVar1); // 格式化输出:科学计数法 dVar2 = 123.001234; // 向变量赋值 printf("dVar2 的值为 %Lf\n", dVar2); // 格式化输出:长实数 printf("dVar2 的值为 %Le\n", dVar2); // 格式化输出:科学计数法 return 0; }

3. 输入输出:

dVar1 的值为 12.001230
dVar1 的值为 1.200123e+001
dVar2 的值为 123.001234
dVar2 的值为 1.230012e+002

【注意!】 double 为双精度浮点数,内存中占 8个字节,有效数位是 16位。dVar2 按科学计数法格式(Le)输出时虽然与赋值不完全相同,这只是格式化输出时的有效数字位数限制所致,但在实际存储和计算时都是与赋值完全相同的,因此在按长实数格式(Lf)输出时与赋值完全相同

【练习6】两个数字相加

0. 题目:
题目两个数字相加
1. 分析:
分析使用 scanf() 来接收输入, printf() 与 %d 格式化输出整数。
2. 程序:

#include <stdio.h> int main() { int firstNum, secondNum, sumNum; printf("输入两个整数(以空格分隔): "); // scanf() 格式化输入,接收用户输入的两个整数 scanf("%d %d", &firstNum, &secondNum); // 两个整数相加 sumNum = firstNum + secondNum; // 输出结果 printf("%d + %d = %d", firstNum, secondNum, sumNum); return 0; }

3. 输入输出:

输入两个数(以空格分割): -1 99
-1 + 99 = 98

【注意!】 由于scanf()函数中定义的输入格式为"%d %d"(两个%d之间有一个空格),在输入时就必须严格按照定义的格式,在输入的两个整数之间加一个空格,否则可能出错。类似地,如果定义输入格式为"%d,%d",就必须在在输入的两个整数之间加一个逗号。

【练习7】两个浮点数相乘

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zzdsgp.html