文章目录
-
- 1、请阅读下面的程序,在空白处填写正确的代码,要求各在一行从头开始输出m和n的值。
- 2、求100~599之间的所有水仙花数,即各位数字的立方和恰好等于该数本身的数。
- 3、以下程序的功能是:将值为三位正整数的变量x中的数值按照个位、十位、百位的顺序 拆分并输出。请填空。
- 4、完成功能:产生并输出杨辉三角的前七行。
- 5、若程序运行时从键盘输入65<回车>,则输出结果为AC (说明:字符A的ASCII码值为 65), 请在空白处填写正确的代码。
- 6、完成功能:一共 100 担货物,需要 100 只马来运输,大马一只驮3 担,中马一只驮 2 担,小马两只驮 1 担。计算所有符合条件的大马、中马和小马的个数。 代码:
- 7、下面程序是输入x,y,z三个整数,输出最小值
- 8、下面程序是输入x,y,z三个整数,输出最小值
- 9、根据某城市普通出租车收费标准编写程序进行车费计算(保留2位小数)。具体标准如 下:起步里程为3公里,起步费10元;超起步里程后10公里内,每公里2元;超过10公 里以上的部分加收50%的回空补贴费,即每公里3元;营运过程中,因路阻及乘客要求临 时停车的,按每5分钟2元计收(不足5分钟则不收费)。请阅读下面的程序,在空白处 填写正确的代码。
- 10、程序填空(程序功能:求100~200间的全部素数)
- 11、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:在5个数中,找出最 大的元素及位置。
- 12、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:求s=2+4+6+…+80之 和。
- 13.设长方形的高为 2.5,宽为 1.6,编程求该长方形的周长(保留一位小数)和面积(保 留两位小数)。
- 14、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:求s=3+5+7+…+59 之和。
- 15、下面函数的功能是找出一个2×4矩阵中的最大元素值
- 16、为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电 价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时; 超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时,请计算电费(保留2位 小数)。请阅读下面的程序,在空白处填写正确的代码。
- 17、以下程序的功能是:求出数组x中各相邻两个元素的和,依次存放到a数组中,然后输 出,请填空。
- 18、下面程序的功能是以每行 10个数据的形式输出 a 数组。
1、请阅读下面的程序,在空白处填写正确的代码,要求各在一行从头开始输出m和n的值。
#include<stdio.h>
int main()
{
int m = 10, n = 20;
printf("%d ", m);
printf("%d\n", n);
return 0;
}
输出:10 20
2、求100~599之间的所有水仙花数,即各位数字的立方和恰好等于该数本身的数。
#include<stdio.h>
int main()
{
int i, j, k, m, n;
for(i = 1; i <= 5; i++) //___1___
for(j = 0; j <= 9; j++)
for(k = 0; k <= 9; k++)
{
m = i * 100 + j * 10 + k; //___2___
n = i * i * i + j * j * j + k * k * k;
if(m == n)
printf("%d\n", m);
}
return 0;
}
3、以下程序的功能是:将值为三位正整数的变量x中的数值按照个位、十位、百位的顺序 拆分并输出。请填空。
#include <stdio.h>
int main() {
int x = 256;
printf("%d-%d-%d\n", x % 10, (x / 10) % 10, x / 100);
return 0;
}
4、完成功能:产生并输出杨辉三角的前七行。
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
#include <stdio.h>
int main()
{
int a[7][7];
int i, j;
for(i = 0; i < 7; i++)
{
a[i][0] = 1;
a[i][i] = 1; //___1___ 每一行的最后一个元素也是1
}
for (i = 2; i < 7; i++)
for (j = 1; j < i; j++)
a[i][j] = a[i-1][j-1] + a[i-1][j]; //___2___ 计算杨辉三角的其它元素
for (i = 0; i < 7; i++)
{
for (j = 0; j <= i; j++) // ___3___打印每一行,直到该行的最后一个元素
printf("%6d", a[i][j]);
printf("\n");
}
return 0;
}
5、若程序运行时从键盘输入65<回车>,则输出结果为AC (说明:字符A的ASCII码值为 65), 请在空白处填写正确的代码。
#include <stdio.h>
int main()
{
char c1, c2;
scanf("%d", &c1); // ___1___
c2 = c1; //___2___
printf("%c%c\n", c1, c2);
return 0;
}
6、完成功能:一共 100 担货物,需要 100 只马来运输,大马一只驮3 担,中马一只驮 2 担,小马两只驮 1 担。计算所有符合条件的大马、中马和小马的个数。 代码:
#include <stdio.h>
int main()
{
int a, b, c;
for(a = 0; a <= 33; a++) //___1___ 大马最多33只,因为33*3=99,剩下1担可以由中马或小马运输
for(b = 0; b <= 50; b++) // 中马最多50只,因为50*2=100
for(c = 0; c <= 100; c++)
{
if(3*a + 2*b + 0.5*c == 100 && a + b + c == 100) // ___2___检查是否满足条件
printf("%d,%d,%d\n", a, b, c);
}
return 0;
}
7、下面程序是输入x,y,z三个整数,输出最小值
#include <stdio.h>
int main()
{
int x, y, z, min;
printf("请输入三个整数:");
scanf("%d%d%d", &x, &y, &z);
if (y < x) // ___1___如果y小于x,则min初始为y
min = y;
else
min = x;
if (min > z) // ___2___如果z小于当前的min,则更新min为z
min = z;
printf("min=%d\n", min);
return 0;
}
8、下面程序是输入x,y,z三个整数,输出最小值
#include <stdio.h>
int main()
{
int a, b, c, max;
printf("请输入三个整数:");
scanf("%d %d %d", &a, &b, &c);
if (b > a) // ___1___如果b大于a,则max初始为b
max = b;
else
max = a;
if (max < c) // ___2___如果c大于当前的max,则更新max为c
max = c;
printf("max=%d\n", max);
return 0;
}
9、根据某城市普通出租车收费标准编写程序进行车费计算(保留2位小数)。具体标准如 下:起步里程为3公里,起步费10元;超起步里程后10公里内,每公里2元;超过10公 里以上的部分加收50%的回空补贴费,即每公里3元;营运过程中,因路阻及乘客要求临 时停车的,按每5分钟2元计收(不足5分钟则不收费)。请阅读下面的程序,在空白处 填写正确的代码。
#include<stdio.h>
int main()
{
double k; // 行驶的公里数
int fen; // 停车时间(分钟)
double money1, money2, money; // money1是停车费用,money2是起步费,money是总费用
scanf("%lf,%d", &k, &fen); // 读取行驶公里数和停车时间
money1 = fen / 5 * 2.0; // 计算停车费用,每5分钟2元
money2 = 10.0; // 起步费10元
if (k < 3.0)
money = money1 + money2; // 如果行驶公里数小于3公里,只有起步费和停车费
else
{
if (k >= 3.0 && k < 10.0) //___1___如果行驶公里数在3到10公里之间
money = money1 + money2 + (k - 3.0) * 2.0; // 起步费加上超过3公里的部分,每公里2元
if (k >= 10.0)
money = money1 + money2 + (10.0 - 3.0) * 2.0 + (k - 10.0) * 3.0; // 超过10公里的部分,每公里3元
}
printf("%0.2f\n", money); // ___2___输出总费用,保留两位小数
return 0;
}
10、程序填空(程序功能:求100~200间的全部素数)
#include <stdio.h>
#include <math.h> // 需要包含数学库以使用sqrt函数
int main()
{
int m, k, i, n = 0;
for(m = 101; m <= 200; m += 2)
{
if(n % 10 == 0) printf("\n");
k = (int)sqrt(m); // 将sqrt(m)的结果转换为整数
for(i = 2; i <= k; i++) // ___1___从2开始检查,因为除了2之外没有更小的素数能整除任何数
if(m % i == 0) break; //___2___ 如果m能被i整除,则m不是素数,跳出循环
if(i == k + 1) // ___3___如果循环正常结束,没有找到能整除m的数,m是素数
{
printf("%d ", m); // 注意这里的分号应该是英文分号
n++;
}
}
return 0;
}
11、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:在5个数中,找出最 大的元素及位置。
#include<stdio.h>
#define size 5
int main()
{
int a[size] = {4, 6, 3, 9, 23};
int max, p, i;
max = a[0]; // ___1___ 假设数组的第一个元素是最大的
p = 0; // 最大元素的初始位置是0
for (i = 1; i < size; i++)
{
if(a[i] > max)
{
max = a[i];
p = i; // ___2___更新最大元素的位置
}
}
printf("最大元素是:%d,位置是:%d\n", max, p); // 输出最大元素及其位置
return 0;
}
12、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:求s=2+4+6+…+80之 和。
#include <stdio.h>
int main()
{
int i, sum = 0;
for (i = 2; i <= 80; i += 2) // ___1___每次循环增加2,因为公差是2
{
sum += i; // ___2___将当前的i值加到sum上
}
printf("sum=%d\n", sum);
return 0;
}
13.设长方形的高为 2.5,宽为 1.6,编程求该长方形的周长(保留一位小数)和面积(保 留两位小数)。
#include <stdio.h>
int main()
{
float x = 2.5, y = 1.6, p, s;
p = 2 * x + 2 * y; // 计算周长
s = x * y; // 计算面积,___1___ 处应填写 x * y
printf("长为%.1f, 宽为%.1f 的长方形,周长为%.1f, 面积为%.2f\n", x, y, p, s); // ___2___输出结果,保留一位小数和两位小数
return 0;
}
14、请阅读下面的程序,在空白处填写正确的代码,该程序的功能是:求s=3+5+7+…+59 之和。
#include <stdio.h>
int main()
{
int i, sum = 0;
for (i = 3; i <= 59; i += 2) // ___1___每次循环增加2,因为公差是2
{
sum += i; // ___2___将当前的i值加到sum上
}
printf("sum=%d\n", sum);
return 0;
}
15、下面函数的功能是找出一个2×4矩阵中的最大元素值
#include <stdio.h>
int main()
{
int i, j, max, arr[2][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8}
}; // 假设这是初始化的矩阵
max = arr[0][0]; // 初始化max为矩阵的第一个元素
for (i = 0; i < 2; i++) // ___1___遍历矩阵的行
{
for (j = 0; j < 4; j++) //___2___ 遍历矩阵的列
{
if (arr[i][j] > max)
max = arr[i][j]; // ___3___更新max为当前找到的最大值
}
}
printf("%d", max); // 输出最大值
return 0;
}
16、为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电 价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦时; 超过50千瓦时的,超出部分的用电量,电价上调0.05元/千瓦时,请计算电费(保留2位 小数)。请阅读下面的程序,在空白处填写正确的代码。
#include <stdio.h>
int main()
{
int n;
scanf("%d", &n);
if(n <= 50)
{
if(n < 0)
printf("Invalid Value!\n");
else
printf("cost = %.2f\n", n * 0.53); // 0.53元/千瓦时,___1___ 处填写 n * 0.53
}
else
printf("cost = %.2f\n", (50 * 0.53) + (n - 50) * (0.53 + 0.05)); // 超过50千瓦时的电费计算,___2___ 处不需要填写,因为整个表达式已经给出
return 0;
}
17、以下程序的功能是:求出数组x中各相邻两个元素的和,依次存放到a数组中,然后输 出,请填空。
#include <stdio.h>
int main()
{
int x[10], a[9], i;
for (i = 0; i < 10; i++)
scanf("%d", &x[i]);
for (i = 1; i < 10; i++) // ___1___从1开始,因为我们要计算x[0]和x[1]的和
a[i - 1] = x[i] + x[i - 1]; // ___2___计算相邻两个元素的和,存放到a数组中
for (i = 0; i < 9; i++)
printf("%d ", a[i]); // 输出a数组的元素,元素之间用空格分隔
printf("\n");
return 0;
}
18、下面程序的功能是以每行 10个数据的形式输出 a 数组。
#include <stdio.h>
int main()
{
int a[50], i;
printf("输入50个整数:");
for(i = 0; i < 50; i++)
scanf("%d", &a[i]); // __1__读取用户输入的整数并存储到数组a中
for(i = 0; i <= 50; i++)
{
printf("%3d", a[i]); // ___2___输出数组a的第i个元素,%3d表示整数占3个字符宽度
if((i + 1) % 10 == 0) // ___3___每输出10个数后换行
printf("\n");
}
return 0;
}