快排,这个是说当要划分为两部分前先判断能不能划分,当没办法划分时(low=high) ,就不用划分了,该数的位置对了。
专注于为中小企业提供网站建设、成都网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业贵溪免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了上1000+企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
#include stdio.h
char text[3][80];
void count(int *upp, int *low, int *dig, int *spa, int *oth);//#####【1】#####;//函数原型声明
int main()
{
int i,upp,low,dig,spa,oth;
upp=low=dig=spa=oth=0;
for ( i=0;i3;i++)
{
printf("please input line %d:\n",i+1);
gets(text[i]);//#####【2】#####;//从键盘读取一行字符串
}
count(upp, low, dig, spa, oth/*#####【3】#####*/);
printf("\nupper case: %d\n",upp);
printf("lower case: %d\n",low);
printf("digit : %d\n",dig);
printf("space : %d\n",spa);
printf("other : %d\n",oth);
return 0;
}
void count(int *upp, int *low, int *dig, int *spa, int *oth)
{
int i,j;
for (i=0;i3;i++)
{
for (j=0;j80 text[i][j]!='\0';j++)
{
if (text[i][j]='A' text[i][j]='Z'/*#####【4】#####*/)//判断字符是否大写字母
(*upp)++;
else if (text[i][j]='a' text[i][j]='z'/*#####【5】#####*/) //判断字符是否小写字母
(*low)++;
else if (text[i][j]='0' text[i][j]='9'/*#####【6】#####*/) //判断字符是否数字
(*dig)++;
else if (text[i][j]==' '/*#####【7】#####*/) //判断字符是否空格
(*spa)++;
else
(*oth)++;/*#####【8】#####*/
}
}
}
【1】、void count(int *upp, int *low, int *dig, int *spa, int *oth)
【2】、gets(text[i])
【3】、upp, low, dig, spa, oth
【4】、text[i][j]='A' text[i][j]='Z'
【5】、text[i][j]='a' text[i][j]='z'
【6】、text[i][j]='0' text[i][j]='9'
【7】、text[i][j]==' '
【8】、(*oth)++
这是STM处理器的操作吧?
GPIO_WriteLow是它的库函数,作用是将对应引脚输出低电平。前提是必须配置对应引脚为GPIO输出模式。
第一个参数表示的是选择哪一组GPIO(端口GPIOA到GPIOI可选),现在选择的GPIOD。
第二个参数表示的是选择的GPIO组中哪几个引脚输出低电平,每个引脚对应一个bit,那么(GPIO_PIN_0|GPIO_PIN_2|GPIO_PIN_4|GPIO_PIN_7)进行或操作,就表示0,2,4,7四个引脚对应的bit都有效,也就是这四个引脚都输出低电平。
直接用两个数(或变量)相乘就可以表示平方,比如x*x
不过如果,需要求m的n次方,就需要用到pow(x,y)乘方(包括开方)这个库函数了,使用pow(x,y)这个库函数,需要math.h头文件。
其中x和y都是双精度浮点(double)型。
#include"math.h"
U32sqrt_fun(U64x){
U32low=0;
U32high=x;
U32mid;
U64data;
while(low high){
mid=(low+high)/2;
data=(U64)mid*mid;
if(data x){
high=mid-1;
}else if(data x){
low=mid+1;
}else{
return(mid);
}
}
return(mid);
}
voidmain(void){
volatileU32td1,td2;
U64d=0x12345678ABCD;
td2=sqrt(d);
td1=sqrt_fun(d);
}
扩展资料
C语言无参函数的定义:
dataType是返回值类型,它可以是C语言中的任意数据类型,例如int、float、char等。
functionName 是函数名,它是标识符的一种,命名规则和标识符相同。函数名后面的括号( )不能少。
body是函数体,它是函数需要执行的代码,是函数的主体部分。即使只有一个语句,函数体也要由{}包围。
如果有返回值,在函数体中使用return语句返回。return出来的数据的类型要和dataType一样。
floor()是C语言中的一个数学函数,意思是向下取整,即取不大于要求值的最大的那个整数值。
floor原意为地板之意,可以助记为数值犹如人处在地板上,取小于该数值的地板。
函数头文件:#include math.h
函数原型:double ceil(double x);
函数说明:floor(x) 返回不大于x的最大整数值 以double类型数据返回。
例子:floor(2.5) ; 运行后输出可以得到结果为2。
扩展资料:
C语言中与floor对应的还有ceil()函数,意思是向上取整,即取大于或等于要求值的最小的那个整数值。
头文件:#include math.h
函数原型:double ceil(double x);
函数说明:ceil(x) 返回不小于x的最小整数值 以double类型数据返回
例子:floor( 2.5); 运行后可以得到3。
参考资料:百度百科——floor函数