C语言必看几个例题,懂后获益匪浅

1.求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,例如:2+22+222+2222+22222

#include<stdio.h>

#include<stdlib.h>

int main()

{

int i = 0;

int j = 0;

int a = 0;

int sum = 0;

printf("请输入一个数(个位数):");

scanf_s("%d", &i);

a = i;

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

{

sum += i;

i = i * 10 + a;

}

printf("%d", sum);

system("pause");

return 0;

}

2.

编写一个程序,它从标准输入(终端)读取C源代码,并验证所有的花括号都正确的成对出现。

例如:

输入:{}{},成功匹配。

输入:{}{{}},成功匹配

输入:{}}{,匹配不成功

输入:}}{{,匹配不成功

输入:{}},匹配不成功

输入:}{}{{,匹配不成功

#include<stdio.h>

#include<stdlib.h>

int main()

{

int cou = 0;

char ch;

while ((ch = getchar()) != ‘\n‘)

{

if (ch == ‘{‘)

cou++;

else if (ch == ‘}‘)

{

if (cou == 0)

printf("匹配不成功!");

cou--;

}

}

if (cou == 0)

printf("匹配成功!");

else

printf("匹配不成功!");

system("pause");

return 0;

3.编写折半查找函数。

#include <stdio.h>

#include<stdlib.h>

int main()

{

int a[11] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

int min = 0, max = 10, mid, n;

printf("请输入您要查找的数:\n");

scanf_s("%d", &n);

while (min + 1 != max)

{

mid = (min + max) / 2;

if (n>a[mid]) min = mid;

else if (n<a[mid]) max = mid;

else

{

printf("输入的数在数列的第%d位\n", mid); break;

}

}

if (n == a[max]) printf("输入的数在数列的第%d位\n", max);

else if (n == a[min]) printf("输入的数在数列的第%d位\n", min);

else if (n != a[mid]) printf("输入的数不在数列中");

system("pause");

return 0;

}

4.编写一个程序,从标准输入读取几行输入。每行输入都要打印到标准输出上,前面加上行号。

在编写这个程序的时候要使这个程序能够处理的输入行的长度没有限制。

#include <stdio.h>

#include <stdlib.h>

int main()

{

int n = 1, at_beginning = 1;

char ch;

while (1)

{

printf("Please input the line:\n");

do

{

scanf_s("%c", &ch);

if (at_beginning == 1)

{

at_beginning = 0;

printf("%d ", n);

}

printf("%c", ch);

} while (ch != ‘\n‘);

at_beginning = 1;

n++;

}

system("pause");

return 0;

}

5.编这样一个程序,用户输入10个整数,程序找出其中的最大值和最小值

#include <stdio.h>

#include<stdlib.h>

int main()

{

int a[10], i, max, min;

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

{

printf("num%d=", i + 1);

scanf_s("%d", &a[i]);

}

max = a[0]; min = a[0];

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

{

if (a[i]>max) max = a[i];

if (a[i]<min) min = a[i];

}

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

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

system("pause");

return 0;

}

6.写程序求解:

有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?打印出来?

#include<stdio.h>

#include<stdio.h>

main()

{

int i, j, k;

int m = 0;

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

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

for (k = 1; k<5; k++)

{

if (i != j&&k != j&&i != k)

{

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

m++;

}

}

printf("一共有多少个数:");

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

system("pause");

return 0;

}

时间: 2024-10-29 19:08:45

C语言必看几个例题,懂后获益匪浅的相关文章

读懂金融危机必看的十四本书

华尔街见闻网站此前曾推荐过不少书单(例如华尔街人必读的22本金融佳作.金融新手必看的十本书以及最值得一读的经济史书单),本周末我们为读者总结了关于最近一场金融危机的金融佳作,希望能给读者带来帮助. 1. <大空头> (The Big Short: Inside the Doomsday Machine) 作者: 迈克尔?刘易斯(Michael Lewis) 本书展现的是一群智力超群.性格怪异的"终结者".他们之前仅仅是名不见经传的华尔街员工,但他们是洞察次贷危机的"

学编程新手必看文章

1.把C++当成一门新的语言学习(和C没啥关系!真的.): 2.看<Thinking In C++>,不要看<C++变成死相>: 3.看<The C++ Programming Language>和<Inside The C++ Object Model>,不要因为他们很难而我们自己是初学者所以就不看: 4.不要被VC.BCB.BC.MC.TC等词汇所迷惑--他们都是集成开发环境,而我们要学的是一门语言: 5.不要放过任何一个看上去很简单的小编程问题--他们

程序员必看书籍(转载)

程序员必看书籍(转载) C++: Prata<C++ Primer Plus>:基础,第一本书.(之前的版本也可,不过推荐最新的) Lippman<Inside C++ Object Model>:初级,加深语言层次上的理解.不过有点小老了.里面的cfront编译器早退出江湖好久了.思想值得学习 侯捷<STL源码剖析>:第三本书,中级,深入STL Vandevoorde<C++ Template>:第四本,中级,范式编程 罗剑锋<Boost>两本

一生必看的100本书

1<诗经> "所谓伊人 在水一方" ......任何时候,请都不要怀疑,人类文明的光辉顶峰在东方! 2<易经>天行健,君子以自强不息 这本书偶就能读懂这句 易经其实是比天书还天书的天书 建议把这块硬骨头留在最后看 避实就虚嘛 排在第二是因为他确实经典中的经典. “天行健,君子以自强不息”.“地势坤,君子以厚德载物”.意谓:天(即自然)的运动刚强劲健,相应于此,君子应刚毅坚卓,发愤图强:大地的气势厚实和顺,君子应增厚美德,容载万物.译为:君子应该像天宇一样运行不息

Linux网络编程必看书籍推荐

首先要说讲述计算机网络和TCP/IP的书很多. 先要学习网络知识才谈得上编程 讲述计算机网络的最经典的当属Andrew S.Tanenbaum的<计算机网络>第五版,这本书难易适中. <计算机网络(第5版)>是国内外使用最广泛.最权威的计算机网络经典教材. 目前已经是第五版,本书作者80年代就开发出MINIX,是一个用于操作系统教学的类UNIX(的小型操作系统.而linux就是受其影响.... 第五版是2012年出的,也比较新. 作 者: (美)特南鲍姆,(美)韦瑟罗尔 著 严伟,

Linux技术学习要点,您掌握了吗---初学者必看

Linux技术学习要点,您掌握了吗---初学者必看 1.如何做好嵌入式Linux学习前的准备? 要成为一名合格的嵌入式Linux工程师,就需要系统的学习软.硬件相关领域内的知识,需要在最开始就掌握开发的规范和原则,养成良好的工作习惯.为了确保学习的效果,信盈达安排的整个课程体系是非常集中.高效的,这就要求准备参加嵌入式Linux就业课程学习的同学要调整好自己的时间,务必要确保在4个多月的学习时间内能够高度集中精力.兄弟连Linux培训. 在整个集中学习过程中,既要保证课上认真听讲.实战演练的时间

程序员未来的发展方向……(猿媛必看)

程序员未来的发展方向--(猿媛必看) 提交 我的评论 加载中 已评论 程序员未来的发展方向--(猿媛必看) 2015-08-14 CSDN博客 程序人生 程序人生 程序人生 微信号 coder_life 功能介绍 分享CSDN社区中最优质的博文.最精彩的讨论.最实用的开发资源,并不定期奉送CSDN社区的各种福利. ↑ 点击上方"程序人生"关注我们 程序员工作两三年后,基本上都会考虑自己的未来发展方向.发展的路径不外乎: 程序员-系统分析员-架构师-技术经理-CTO程序员-项目组长-项目

.NET开发必看资料53个+经典源码77个

目录0豆下载:http://down.51cto.com/data/426019 附件预览: 基于.net构架的留言板项目大全源码 http://down.51cto.com/zt/70 ASP.net和C#.net通用权限系统组件功能教程 http://down.51cto.com/zt/129 跟我一起学Visual Studio 2008系列视频教程 http://down.51cto.com/zt/181 微软官方Silverlight探秘系列视频课程 http://down.51cto

Windows Phone开发人员必看资料

win phone开发必看资料,下载地址收藏啦!收藏后可有选择性的下载,希望大家喜欢! 完整附件下载:http://down.51cto.com/data/414417 附件预览: Windows Embedded Standard开发初体验[课件汇总] http://down.51cto.com/data/65627 利用Windows Embedded Standard 7构建操作系统映像 http://down.51cto.com/data/65761 Windows Embedded S