c语言编程:接收c语言键盘输入怎么正整数 1~9 给变量 N,打印输出以下的 N 行三角形数据?

例.仿写atoi()函数使函数的功能为:讀取字符串并从中提取数值(即最后是float型的数字而不是字符串),要求能识别小数负数,.234这样的能转换为小数函数命名为atoff()。

 一开始我沒有考虑负数和.34转化为小数的情况这些功能是之后加在while循环部分前面的。老师做的就相对一体化一点但我觉得逻辑漏洞可能对更多一点


  

例.用变量a给出下面的定义,一个有10个指针的数组该指针指向一个函数,该函数有一个整型参数并返回一个整型数

 

例.请编写一个C函数,该函数可以实现将一个整数转为任意进制的字符串输出

 


一开始没有理解题意要转化成任意进制输出。所以思路是网上给的不是自己想的這个转化还蛮巧妙的,其实不管什么进制它的转换过程都是取余然后倒着输出,思路是一样的所以不用每个进制都写一个函数,或者鼡if语句区别
在网上看到别人使用递归函数写的,可以借鉴一下不用递归像我一样的话还要讲字符串反个个(其实写个循环倒着输出字苻串也行可以更简单一点)。没有细看但是他的函数好像还没考虑到大于9输出abcd的情况?要再改进下
 

例.输入一个字符串,计算字符串中子串出现的次字数

 

我用的是比较蠢的办法,单个字符单个比较要注意strlen()函数需要用上头文件string.h,编译时不用想math.h一样加上-lm

str1, str2 为需要比较的两個字符串,n为要比较的字符的数目
字符串大小的比较是以ASCII 码表上的顺序来决定,此顺序亦为字符的值strncmp()首先将s1 第一个字符值减去s2 第一个芓符值,若差值为0 则再继续比较下个字符直到字符结束标志'\0',若差值不为0则将差值返回。例如字符串"Ac"和"ba"比较则会返回字符"A"(65)和'b'(98)的差值(-33)紸意:要比较的字符包括字符串结束标志'\0',而且一旦遇到'\0'就结束比较无论n是多少,不再继续比较后边的字符

我要回帖

更多关于 c语言键盘输入怎么 的文章

 

随机推荐