临近期末,这些题不来看看吗?(上)
创始人
2024-04-13 23:36:07
0

目录

1、在屏幕上输入9*9乘法表

2、输入一个值,打印对应的乘法口诀表

3、求十个整数的最大值

4、分数求和:计算1/1 - 1/2 + 1/3 - 1/4 + 1/5 +...+ 1/99 - 1/100(3种方法)

5、编写程序数一下,1到100的所有整数中出现多少个9(2种方法)

6、输入一个数n,计算1到n的值(两种方法)


1、在屏幕上输入9*9乘法表

#include 
int main()
{int i = 0;for (i = 1; i <= 9; i++)//外层for循环控制行 {int j = 0;for (j = 1; j <= i; j++)//内层for循环控制列{printf("%d*%d=%-2d ", i, j, i * j);//输出结果,%-2d控制宽度为两个字符,且向左对齐}printf("\n");}return 0;
}

转化说明的结果

•0标志

设定0标志之后,如果数值的前面有空余位,则用0补齐位数(如果省略了0标志,则会用空白位补齐位数)。

•最小字段宽度

就是至少要显示出的字符位数。

例如:%5d --- 显示至少5位的十进制整数

另外,如果设定“-”,数据会左对齐显示,未设定则会右对齐。

2、输入一个值,打印对应的乘法口诀表

#include 
int main()
{int i = 0;int n = 0;scanf("%d", &n);for (i = 1; i <= n; i++){int j = 0;for (j = 1; j <= i; j++){printf("%d*%d=%d ", i, j, i * j);}printf("\n");}return 0;
}

 3、求十个整数的最大值

#include 
int main()
{int i = 0; //下标int arr[10] = { 0 };int sz = sizeof(arr) / sizeof(arr[0]);//求数组元素个数//输入for (i = 0; i < sz; i++){scanf("%d", &arr[i]);}int max = arr[0];//先把数组中第一个元素视作最大的,再在以下的循环中比较for (i = 1; i < sz; i++){if (arr[i] > max){max = arr[i];//每次比较后,将最大的值附给MAX}}printf("%d\n", max);return 0;
}

4、分数求和:计算1/1 - 1/2 + 1/3 - 1/4 + 1/5 +...+ 1/99 - 1/100(3种方法)

法一:

分母奇数为正,分母偶数为负

#include 
int main()
{int o = 0;//偶数int j = 0;//奇数double sum1 = 0.0;//偶数的和double sum2 = 0.0;//奇数的和double sum = 0.0;//总和for (j = 1; j <= 99; j += 2){sum2 = sum2 + (1.0/j);  //计算分母为奇数的和}for (o = 2; o <= 100; o += 2){sum1 = sum1 + (1.0/o); //计算分母为偶数的和}//奇数的和-偶数的和sum = sum2 - sum1;//打印结果printf("%f\n", sum);return 0;
}

法二:

与法一类似

#include 
int main()
{int i = 0;double sum = 0.0;for (i = 1; i <= 100; i++){if (i % 2 == 1)//分母是奇数就相加{sum = sum + (1.0 / i);}else //分母为奇数就相减{sum = sum - (1.0 / i);}}printf("%f\n", sum);return 0;
}

法三:

#include 
int main()
{int i = 0;double sum = 0.0;int flag = 1;for (i = 1; i <= 100; i++){sum = sum + flag * (1.0 / i);flag = -flag;}printf("%f\n", sum);
}

5、编写程序数一下,1到100的所有整数中出现多少个9(2种方法)

个位:9 19 29 39 49 59 69 79 89

十位:90 91 92 93 94 95 96 97 98    

个位和十位:99 

法一:

#include 
int main()
{int i = 0;int count = 0;//计算有多少个9for (i = 1; i <= 100; i++){if (i % 10 == 9) //判断个位含9 {count++;}else if (i / 10 == 9)  //判断十位含9{count++;}}printf("%d\n", count+1 );//+1的原因是99的十位上还有一个1return 0;
}

法二:

因为if和else if条件为真只会进去一个,去掉else,这样99个位上的9也能+1,十位上的9也能+1

#include 
int main()
{int i = 0;int count = 0;//计算有多少个9for (i = 1; i <= 100; i++){if (i % 10 == 9) //判断个位含9 {count++;}if (i / 10 == 9)  //判断十位含9{count++;}}printf("%d\n", count );return 0;
}

6、输入一个数n,计算1到n的值(两种方法)

法一:

#include 
int main()
{int n = 0;int i = 0;int sum = 0;//输入scanf("%d", &n);//循环产生1~n的数for (i = 1; i <= n; i++){//求和sum = sum + i;//sum += i}//输出printf("%d\n", sum);return 0;
}

法二:

运用数学中的等差数列求和

#include 
int main()
{int n = 0;int sum = 0;//输入scanf("%d", &n);//等差求和sum = n * (1 + n) * 1 / 2;printf("%d\n", sum);return 0;
}

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...
有效的括号 一、题目 给定一个只包括 '(',')','{','}'...