注:编译环境 VC2010,系统WIN7 64位,其他编译环境和系统未测试

1-1. 编程,输入n,输出如下例(n=5)所示的图形:

*****

*****

*****

*****

*****

# include

int main()

{

int length;

void print_parallelogram(int length);

scanf("%d", &length);

print_parallelogram(length);

return 0;

}

/**

* 打印平行四边形

* @param int length 边长

*/

void print_parallelogram(int length)

{

char element    = '*';//元素

char space      =' ';//空格

int i,j,k;

for(i=0; i

{

/** 打印空格 */

for(j=length-(i+1); j>0; j--)

{

printf("%c", space);

}

/** 打印元素 */

for(k=0; k

{

printf("%c",element);

}

printf("\n");

}

}

1-2. 编程,输入n值,输出如下例(n=4)所示的高和上底均为n的等腰梯形:

****

******

********

**********

# include

int main()

{

int length;

void print_isosceles_trapezoid(int length_of_side);

scanf("%d", &length);

print_isosceles_trapezoid(length);

return 0;

}

/**

* 打印等腰梯形

* @param int length_of_side 边长

* @turn  void

*/

void print_isosceles_trapezoid(int length_of_side)

{

char element    = '*';//元素

char space      =' ';//空格

int i,j,k;

for(i=0; i

{

/** 打印空格 */

for(j=length_of_side-(i+1); j>0; j--)

{

printf("%c", space);

}

/** 打印元素 */

for(k=0; k

{

printf("%c",element);

}

printf("\n");

}

}

1-3. 编程,输入n,输出如下例(n=3)所示的边长为n的菱形:

*

***

*****

***

*

# include

int main()

{

int length;

void print_rhombus(int length_of_side);

scanf("%d", &length);

print_rhombus(length);

return 0;

}

/**

* 打印菱形

* @param int length_of_side 边长

* @turn  void

*/

void print_rhombus(int length_of_side)

{

char element    = '*';//元素

char space      =' ';//空格

int times       = length_of_side*2-1;//循环次数

int i,j,k,n,m;

for(i=0; i

{

/** 计算 空格的数量  */

n = length_of_side-(i+1);

n = n < 0 ? -n : n;

/** 打印空格 */

for(j=n; j>0; j--){

printf("%c", space);

}

/** 计算 棱形上边点 和下边点的数量  */

m = i

/** 打印元素 */

for(k=m; k>0; k--){

printf("%c",element);

}

printf("\n");

}

}

1-4. 编程, 输入顶行字符和图形的高。输出如下例(顶行字符为'A',图形的高为5)所示的图形,

A

B C D

E F G H I

J K L M N O P

Q R S T U V W X Y

# include

int main()

{

char letter; int height;

void letter_pyramid(char letter, int height);

printf("请输入金字塔塔顶字母");

scanf("%c", &letter);

printf("请输入金字塔塔高");

scanf("%d", &height);

letter_pyramid(letter, height);

return 0;

}

/**

* 打印字母金字塔

* @param char word  塔顶字母

* @param int  height 塔高

* @return void

*/

void letter_pyramid(char letter, int height)

{

int i,j,k;

/** @TODO 对字符越界做简单处理 */

if(letter+height*height > 256)  {

printf("塔高超出限制,拜拜!!!\n");

return ;

}

for ( i = 0; i < height; i++)   {

/** 打印空格 */

for(k=height-(i+1); k>0; k--) printf("%c", ' ');

/** 打印字母 */

for ( j = 0; j < (i*2)+1; j++)

{

printf("%c", letter++);

}

printf("\n");

}

}

1-5. 编程,打印下列上三角形式的乘法九九表。

1  2  3  4  5  6  7  8  9

----------------------------

1  2  3  4  5  6  7  8  9

4  6  8 10 12 14 16 18

9 14 15 18 21 24 27

16 20 24 28 32 36

25 30 35 40 45

36 42 48 54

49 56 63

86 72

81

# include

int main()

{

void multiplication_table();

multiplication_table();

return 0;

}

/**

* @desc 打印 99乘法表

*/

void multiplication_table()

{

int n = 9,i,j,k;

for (i = 1; i <= n; i++)  printf("%3d", i);

printf("\n");

for (j = 1; j <= n; j++) printf("---");

printf("\n");

for ( i = 1; i <= n; i++)

{

for ( j = 1; j <= n; j++)

{

if (j

printf("   ");

}else{

printf("%3d", i*j);

}

}

printf("\n");

}

}

2-1. 编程,输出200以内(含200)所有完全平方数C(满足C2=A2+B2)及其个数。

# include

int main()

{

void pythagorean_theorem();

pythagorean_theorem();

return 0;

}

/**

*  @desc 求 200以内构成勾股数的个数

*        勾股数公式(a²+ 1)²=(a²-1)²+(2a)²

*/

void pythagorean_theorem()

{

int n=200,i,a,b,c;

int square[200];//用于存放符合勾股数的数

int num=0;// 计算 勾股数的个数

for (i = 1; i*i+1 <= n; i++)

{

/** 套用勾股数定理 */

a  = (i*i+1);

b  = (i*i-1);

c  = 2*i;

if ( a*a == b*b +  c*c && b>0)

{

square[num] = a;

++num;

}

}

if (!num)

{

printf("没有找到符合要求的");return;

}

printf("200内能组成勾股数的个数%d\n",num);

printf("分别是:\n");

while (num)

{

printf("%d\n",square[--num]);

}

}

2-2. 中国古代数学家张丘建在他的《算经》中提出了著名的“百钱百鸡问题”:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,翁、母、雏各几何? 编程,输出所有可能的购买方案。

# include

int main()

{

void money100_chickens100();

money100_chickens100();

return 0;

}

/**

* @desc 《算经》的“百钱百鸡问题”

*          分析得出公式:5x+3y+z/3=100, x+y+z=100;

*/

void money100_chickens100()

{

int max_x = 100/5;//鸡翁最大数

int max_y = 100/3;//鸡母最大数,取整

int x,y,z;//各种鸡个数

for (x = 0; x <= max_x; x++)

{

for (y = 0; y <= max_y; y++)

{

z = 100 - x - y;

if (x *5 + y*3 + z/3.0 == 100)

{

printf("x=%d,y=%d,z=%d\n",x,y,z);

}

}

}

}

2-3. 设N是一个四位数,它的9倍恰好是其反序数(例如:123的反序数是321),编程,输出所有满足条件的N。

# include

int main()

{

/** 4位数9倍恰好是其反序数,所以其反序也是4位数*/

int max = 10000 /9 ;//最大的反序之前的数

int i;

int antitone(int n);

for ( i= 1001; i < max; i++){

if(i*9 == antitone(i)){

printf("%d\n", i);

}

}

return 0;

}

int antitone(int n){

int i=0;

while (n>0){

i = (n%10)+i*10;

n /=10;

}

return i;

}

2-4. 编程,求全部水仙花数。所谓水仙花数是指一个三位数,其各位数字立方的和等于该数。如:153 = 13 + 53+ 33

# include

int main()

{

int i,j,k,n,cube;

for ( i = 1; i <= 9; i++)   {

for ( j = 0; j <= 9; j++)   {

for ( k = 0; k<= 9; k++){

n = i*100+j*10+k;

cube = i*i*i + j*j*j + k*k*k;

if (n==cube)    {

printf("%d\n", n);

}

}

}

}

}

2-5. 编程,输出555555的约数中最大的三位数。

# include

int main()

{

int i ;

for ( i = 999; i >0 ; i--)

{

if (555555 % i == 0)

{

printf("%d\n", i);

break;

}

}

}

2-6. 编程,输出1000到100000之间所有满足下列条件的所有整数及其个数:整数的各位数字之和等于5。

# include

void main()

{

int min_i=1000;

/** 因为各位位数之和等于5,所以大于50000的数位数之和也大于5 */

unsigned int max_i=50000;

unsigned int n,num=0;

int figure(long number);

for(n=min_i;n<=max_i;n++){

if(figure(n)==5){

printf("%d\n",n);

num++;

}

}

printf("个数:%d\n",num);

}

int figure(long number){

int result=0;

while(number>0){

result      += number%10;

number   = number/10;

}

return result;

}

2-7.输出1000以内的全部“完全数”。

# include

void main()

{

int n=1000;

int num=0,i,j,r;

for (i = 1; i <= n; i++){

r = 0;

for (j = 1; j < i; j++){

if (i%j==0){

r +=j;

}

}

if (r==i){

num++;

printf("%d\n",i);

}

}

printf("完全数的个数:%d", num);

}

3-1. 编程,输入10个整数,然后进行查找。输入要查找的整数,若找到,则输出该数在数组中的下标位置,否则输出“can not found!”。

# include

void main()

{  int num[10],i,find,flag=0;

printf("请输入10个数\n");

for (i = 0; i < 10; i++){

scanf("%d", &num[i]);

}

printf("请输入要查找的数");

scanf("%d", &find);

for (i = 0; i < 10; i++){

if (num[i] == find) {

flag=1;

printf("下标为%d\n", i);

}

}

if (flag==0) {

printf("can not found!\n", i);

}

}

3-2.编程,输入一个字符串并删除其中的指定字符。例如,对于字符串abcdcf,指定删除c,则结果为:abdf。

#include

void main()

{

char str[80],str2[80],letter;

int i=0, j=0;

printf("请输入一个字符串\n");

gets(str);

printf("请输入字符串中要删除的字符\n");

scanf("%c",&letter);

while (str[i]!='\0'){

if (str[i] != letter)   {

str2[j++] = str[i];

}

i++;

}

str2[j]= '\0';

puts(str2);

getch();

}

3-3. 编程,输入一行字符,将其反序后再输出。

#include

void main()

{

char str[80],letter,str2[80], *p=str, *q=str2;

int len=0;

printf("请输入一个字符串\n");

gets(str);

while (*p){

p++;

}

len = p-str;

while (--len>=0){

*q++ = str[len];

}

*q = '\0';

puts(str2);

}

3-4. 编程,输入一行字符,将其中的每个字符从小到大排列后输出。

#include

void main()

{

char str[80],*s=str,temp;

int i,j,len;

scanf("%s",str);

while (*s){

s++;

}

len = s - str;

for (i = 0; i < len; i++)   {

for ( j = i+1; j < len; j++){

if (str[i]>str[j]){

temp    =   str[i];

str[i]  =   str[j];

str[j]  =   temp;

}

}

}

printf("%s",str);

getch();

}

3-5. 编程,输入两个已经按从小到大顺序排列好的字符串,将两个字符串合并为一个新的从小到大排列字符串并输出。

#include

void main()

{

char str[80],str2[80],str3[80],*p=str,*q=str2,*r=str3, *temp_p;

printf("请输入第一个顺序字符串\n");

gets(str);

printf("请输入第二个顺序字符串\n");

gets(str2);

while (*p!='\0' && *q!='\0'){

*r++ = *p

}

temp_p = *p=='\0' ? q :p;

while (*r ++ = *temp_p ++ );

*r= '\0';

puts(str3);

getch();

}

3-6. 输入一行文字,判断该行文字是否是回文。是输出:YES。否输出:NO

#include

void main()

{

char input[80],*p,*q;

p=q=input;

printf("input string:\n");

gets(input);

while(*p!='\0')p++;

p--;

while (p>=input) {

if (*p != *q) {

printf("NO");

getch();

return;

}

p--;q++;

}

printf("YES");

getch();

return;

}

3-7. 编程,输入若干个字符串,当输入字符串的长度为0时停止输入。输出最长的字符串。

#include

int strlen(char str[]){

char *p=str;

while (*p!='\0' && p++);

return p-str;

}

//把第二个字符串的值复制给第一个

void strcpy(char str1[], char str2[]){

char *p=str2, *q=str1;

while (*q++ = *p++);

}

//求最短字符串

void main()

{

char str[80],str2[80];

int len=0, max_len;

gets(str);

max_len= strlen(str);

strcpy(str2, str);

gets(str);

do{

len = strlen(str);

if (len>max_len){

max_len = len;

strcpy(str2, str);

}

gets(str);

} while (str[0]!='\0');

printf("%s", str2);

getch();

}

3-8.输入一行字符,统计其中有多少个单词,单词之间用空格分隔开。

#include

void main()

{

char str[80], *p=str;

int num=0,flag=1;

gets(str);

while (*p != '\0'){

printf("%d,",*p == ' ');

if (*p == ' '){

flag=1;

}else{

if(flag)num++;

flag=0;

}

p++ ;

}

printf("total %d words", num);

C语言面试题目之指针和数组

说明:所有题目均摘录于网络以及我所见过的面试题目,欢迎补充! 无特殊说明情况下,下面所有题s目都是linux下的32位C程序. 先来几个简单的热热身. 1.计算以下sizeof的值. char str ...

两道CTF Web的题目

1.easyphp 1.1.题目描述 题目首先是一张不存在的图片 查看源码发现只有一句话

一套很有意思的C语言测试题目

网络上逛博客,发现了一套很有意思的测试题目: https://kobes.ca/ 大家有兴趣可以做一下,考一些关于C语言使用的细节: 中文翻译参考: https://www.cnblogs.com/l ...

java几道简单的面试题目

1.   请问以下程序会输出什么? public   class   Test   {  public   static   void   main(String[]   args)   {  Par ...

C语言经典题目

回顾一下吧: 一. 有1.2.3.4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? 解析:可填在百位.十位.个位的数字都是1.2.3.4.组成所有的排列后再去 掉不满足条件的排列. 常规 ...

CTF 两道web整数溢出题目&lpar;猫咪银行和ltshop&rpar;

①猫咪银行: (2018中科大hackgame) 一开始给十个CTB,而flag需要20个CTB,我们需要理财赚够20个. 理财是只能买入TDSU才可以获得收益.我们先上来直接把CTB全部换成TDSU ...

解了这14道C语言谜题后,所有人都失声了!我来带你深入了解C!

本文展示了14个C语言的迷题以及答案,代码应该是足够清楚的,而且有相当的一些例子可能是我们日常工作可能会见得到的.通过这些迷题,希望你能更了解C语言. 如果你不看答案,不知道是否有把握回答各个谜题?让 ...

几道web前端练习题目

在 HTML 语言中,以下哪个属性不是通用属性?A]B]C]D]

C&num;部分---语言经典题目——兔子生兔子

根据本月成兔=上月成兔+上月小兔:本月小兔=上月幼兔:本月幼兔=本月成兔 利用while循环: Console.WriteLine("请输入月份:"); //int m = int ...

随机推荐

Raspkate - 基于&period;NET的可运行于树莓派的轻量型Web服务器

最近在业余时间玩玩树莓派,刚开始的时候在树莓派里写一些基于wiringPi库的C语言程序来控制树莓派的GPIO引脚,从而控制LED发光二极管的闪烁,后来觉得,是不是可以使用HTML5+jQuery等流 ...

python入门到精通&lbrack;二&rsqb;&colon;基础学习&lpar;1&rpar;

摘要:Python基础学习: 注释.字符串操作.用户交互.流程控制.导入模块.文件操作.目录操作. 上一节讲了分别在windows下和linux下的环境配置,这节以linux为例学习基本语法.代码部分 ...

10 steps to becoming the developer everyone wants

You thought it was all about programming skills. But you were wrong! Great code is fine, yet command ...

jmeter 监听的介绍

一个侦听器是一个组件,显示的结果 样本. 结果可以显示在一个树,表格,图表或简单地写入到日志中 文件. 查看的内容反应任何给定的采样器,添加的监听器” 视图 结果树 ”或“ 视图的结果表 一个测试计划 ...

Xcode6 运行程序后,右侧Debug区域的Memory显示空白解决方法

http://chenyh-blog.com/%E8%9B%8B%E7%96%BC%E7%9A%84%E5%86%85%E5%AD%98-%E7%AC%AC%E4%B8%89%E7%AF%87-sdw ...

CSS3样式linear-gradient的使用

linear-gradient linear-gradient是CSS3中新增的样式,主要用于颜色的渐变效果.MDN地址 linear-gradient在不同内核下使用方式不同,详细内容可参考w3cp ...

java 使用CXF将wsdl文件生成客户端代码命令java调用第三方的webservice应用实例

1.先下载cxf包https://download.csdn.net/download/suizhikuo/108112362.解压缩包,通过cmd命令进入到bin目录下(cd cxf\bin的路径) ...

web项目执行流程

先扫描web.xml文件 jsp请求servlet servlet  调数据/不调数据 重定向/转发       Dao(封装数据)   Biz(数据处理)     逻辑判段 返回前端界面显示

Spring的3&period;0提供了一种&colon;SpEL注入方式(了解)

1. SpEL:Spring Expression Language是Spring的表达式语言,有一些自己的语法 2. 语法 * #{SpEL} 3. 例如如下的代码

C语言求等腰梯形面积,几道C语言的题目!相关推荐

  1. 【无标题】java求等腰梯形面积

    由于学校即将进行java期末考试,为了应对复习需要,需要一个通过上底,下底,斜边求等腰梯形的面积.其他文章都是通过求高的方式求等腰梯形面积的,所以我苦思良久,写下了这段代码.我通过勾股定理间接求梯形的 ...

  2. c++ 求四边形面积和周长_C语言编程题 题目:任意输入4个点,求围成四边形的面积是多少?...

    C语言编程题:任意输入4个点,求围成四边形的面积是多少.代码如下: #include "stdio.h" #include "math.h" void main ...

  3. c++ 求四边形面积和周长_C语言编程题 题目:任意输入4个点,求围成四边形的面积是多少?C语言编程题 题目:任意输入4...

    C语言编程题 题目:任意输入4个点,求围成四边形的面积是多少? C语言编程题 题目:任意输入4 www.zhiqu.org     时间: 2020-12-07 我测试过了,四点一线,凹四边形,四边形 ...

  4. c语言求三角形面积已知坐标,c语言求三角形面积知道

    简单的输入三角形的底和高求面积的呈现如下: #include "stdio.h" void main() { float a = 0; float h = 0; printf(&q ...

  5. c语言算正方形面积和周长,C语言编8个程序 比如输入正方形边长求其面积和周长 正方体求体积...

    匿名用户 1级 2018-08-07 回答 // 第一个:求数字位数 #include #include #include #define CRT_SECURE_NO_DEPERCATE int ma ...

  6. c语言三角形的面积编码,C语言求三角形面积代码知道

    满意答案 #include #include using namespace std; void compute(double a,double b,double c) { double s,q; q ...

  7. 求三角形面积c 语言,C语言求三角形面积

    满意答案 octwkc 2013.05.12 采纳率:52%    等级:12 已帮助:8556人 #include "stdio.h" #include "math.h ...

  8. c语言算正方形面积和周长,c语言中编写一程序计算正方形的周长和面积

    C语言 编写程序,从键盘输入一个正数,计算该数的平方根. #include#includeintmain(){\x09doublex;\x09scanf("%lf",&x) ...

  9. c语言求寻找假币的次数,C语言经典算法 - 八枚银币问题

    C语言经典算法 - 八枚银币问题 说明现有八枚银币a b c d e f g h,已知其中一枚是假币,其重量不同于真币,但不知是较轻或 较重,如何使用天平以最少的比较次数,决定出哪枚是假币,并得知假币 ...

  10. linux脚本语言求累加和,Linux Shell脚本语言与数学表达式

    当你理解了Shell脚本,每当需要时都能流畅编写时,那种感觉很爽的.本章中,我们将教你用脚本语言进行比较复杂的数学运算. 让我们从斐波那契数列开始吧. 斐波那契数列,又称黄金分割数列,指的是这样一个数 ...

最新文章

  1. mongo在哪创建管理员_MongoDB初始化创建管理员账户登录
  2. 自学python需要多长时间-大家觉得自学python多久能学会?
  3. 对不起,我就是喜欢问你Spring构造器注入原理
  4. pthread异步_探索 Flutter 异步消息的实现
  5. Centos 6.9中PHPmyadmin 的搭建,WordPress的搭建,Discuz的搭建
  6. 关于本机IP的获取(附带Demo)
  7. 前端开发总结--之关于FusionSphere WEBUI的想法
  8. 酒鬼随机漫步(一个矢量类)
  9. [Leedcode][JAVA][第394题][字符串解码][栈][类型转换]
  10. Dalvik虚拟机简要介绍和学习计划
  11. youcans 的 OpenCV 学习课—6.灰度变换与直方图处理
  12. qt c++ 图片预览_Qt多语言国际化
  13. 连连看(HDU-1175)
  14. 归并排序,我举个例子你就看懂了
  15. Linux脚本学习随记
  16. IDEA 设置导入/导出
  17. CentOS | 资产管理软件GLPI+OCS安装与配置
  18. 计算机科学与技术专业自我小结,最新计算机科学与技术专业毕业自我个人小结优秀范文原创...
  19. 湖北武汉电信机房详细介绍
  20. 一个在阿里做运营同学找一个月多月工作总结出以下几点

热门文章

  1. 机器学习(6)——凸优化理论(一)
  2. java 定时发送心跳_RxJava2.0第五篇 interval 定时任务(心跳包)
  3. 基于单片机的智能家居环境监控系统的设计
  4. java中打印俄罗斯方块游戏_java实现俄罗斯方块小游戏
  5. 2021年Android发展前景怎么样?Android发展前景分析
  6. 【Verilog基础】常见的加法器电路总结(面试常考)(半加器、全加器、行波进位加法器RCA、超前进位加法器CLA)
  7. 电脑ping,电脑ping怎么用|电脑ping怎么打开_PC6教学
  8. 风火编程--用pillow对比展示两张图片
  9. Word跨文件使用格式刷
  10. 问题——nvm use 出现exit status 1:乱码