c语言,,!x与x!分别表示什么意思
C语言中只有!x没有x!。
!x的意思就是x!=0;当X=0时执行while循环;
!即取反,当x!=0时不执行;若x=0,则!x非零;
若x不等于零,则!x=0;一般用if(!x)来做判断式。
c语言 - 搜狗百科c语言是一门面向过程、抽象化的通用程序设计语言,广泛应用于底层开发。C语言具有高效、灵活、功能丰富、表达力强和较高的可移植性等特点,在程序设计中备受青睐。C语言编译器普遍存在于各种不同的操作系统中,其设计也影响了Java、Python等编程语言。C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言编程 判断输入的一个数是否是5的倍数
C语言编程判断输入的一个数是否是5的倍数,编写方法如下图:
C语言的主要特点:
1. 简洁紧凑、灵活方便。C语言一共只有40个关键字,9种控制语句,程序书写形式自由,区分大小写。把高级语言的基本结构和语句与低级语言的实用性结合起来。C语言可以像汇编语言一样对位、字节和地址进行操作,而这三者是计算机最基本的工作单元。
2. 运算符丰富。C语言的运算符包含的范围很广泛,共有34种运算符。C语言把括号、赋值、强制类型转换等都作为运算符处理。从而使C语言的运算类型极其丰富,表达式类型多样化。灵活使用各种运算符可以实现在其它高级语言中难以实现的运算。
3. 数据类型丰富。C语言的数据类型有:整型、实型、字符型、数组类型、指针类型、结构体类型、共用体类型等。能用来实现各种复杂的数据结构的运算。并引入了指针概念,使程序效率更高。
4. 表达方式灵活实用。C语言提供多种运算符和表达式值的方法,对问题的表达可通过多种途径获得,其程序设计更主动、灵活。它语法限制不太严格,程序设计自由度大,如对整型量与字符型数据及逻辑型数据可以通用等。
5. 允许直接访问物理地址,对硬件进行操作。由于C语言允许直接访问物理地址,可以直接对硬件进行操作,因此它既具有高级语言的功能,又具有低级语言的许多功能。
6. 生成目标代码质量高,程序执行效率高。C语言描述问题比汇编语言迅速,工作量小、可读性好,易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编程序生成的目标代码效率低10%~20%。
7. 可移植性好。C语言在不同机器上的C编译程序,86%的代码是公共的,所以C语言的编译程序便于移植。在一个环境上用C语言编写的程序,不改动或稍加改动,就可移植到另一个完全不同的环境中运行。
8. 表达力强。C语言有丰富的数据结构和运算符。包含了各种数据结构,如整型、数组类型、指针类型和联合类型等,用来实现各种数据结构的运算。C语言的运算符有34种,范围很宽,灵活使用各种运算符可以实现难度极大的运算。
C语言编程实现,输入一个人民币小写金额值(不考虑角和分),转化为大写金额值输出。先实现基本功能,如输入1002300,可以输出“壹佰零拾零万贰仟叁佰零拾零元”。
#include <iostream.h>
#include <math.h>
void main()
{
double x,i=10000000;
int j=0;
unsigned int quotient,remainder;
bool beginFlag=0,zeroFlag=0;
cout<<"请输入预转换数额(小于1亿):";
cin>>x;
while (x>=100000000)
{
if (j>=2)
{
cout<<"你的错误输入已达3次,你无权再输入!"<<endl;
return;
}
cout<<"你输入的金额超出转换范围,请重新输入!"<<endl;
cout<<"请输入预转换数额(小于1亿):";
cin>>x;
j++;
}
if (x<=0)
{
cout<<"零元整"<<endl;
return;
}
x=floor(x*100 +0.5)/100; //小数点后2位四舍五入
while (i>0.001)
{
if (i>0.9)
quotient=(unsigned int)floor(x/i);
else
{
if (i>=0.099)
quotient=(unsigned int)floor(x*10);
else
quotient=(unsigned int)floor(x*100);
}
remainder=quotient%10;
if (remainder!=0)
beginFlag=1;
if ((zeroFlag==1) && (beginFlag==1) && (i>1000) && (remainder>0))
cout<<"零";
switch (remainder) //输出大写数字
{
case 0:
break;
case 1:
cout<<"壹";
break;
case 2:
cout<<"贰";
break;
case 3:
cout<<"叁";
break;
case 4:
cout<<"肆";
break;
case 5:
cout<<"伍";
break;
case 6:
cout<<"陆";
break;
case 7:
cout<<"柒";
break;
case 8:
cout<<"捌";
break;
case 9:
cout<<"玖";
break;
}
if (remainder>0)
zeroFlag=0;
else if (beginFlag==1)
zeroFlag=1;
if (beginFlag==1) //输出单位
{
if ((i==10000000) && (remainder>0))
cout<<"仟";
if ((i==1000000) && (remainder>0))
cout<<"百";
if ((i==100000) && (remainder>0))
cout<<"十";
if (i==10000)
cout<<"万";
if ((i==1000) && (remainder>0))
cout<<"仟";
if ((i==100) && (remainder>0))
cout<<"百";
if ((i==10) && (remainder>0))
cout<<"十";
if (i==1)
cout<<"元";
if ((i>=0.09) && (i<1) && (remainder>0))
cout<<"角";
if ((i>=0.009) && (i<0.1) && (remainder>0))
cout<<"分";
}
i=i/10;
}
cout<<"整"<<endl;
}
//测试结果:
C语言作业:结构体编程练习 在屏幕上模拟显示一个数字式时钟 源代码能给我的话+50,感谢
程序运行正确,只是有一点点的小瑕疵,
for (t=0; t<50000000; t++)
控制一秒延迟,这里在我的系统上面,还需要加一个零,计时器才差不多相当于过1秒。
不知道LZ有什么潜在疑问呢?
在C语言中,下列合法的字符常量是?
首先看定义,用单引号括起来的单个字符,或用双引号括起来的一串字符即字符常量。
c
&
是用单引号括起来的单个字符,正确。
a
xff
b
65
d 28
是用单引号括起来的多个字符,但因它们前面都
有一个转义符
‘‘
,就不能说它们都不符合定义,都不合法的。
a
xff
中
x
组合表示是一个十六进制数
ffh
=
10
进制的
255
,它代表一个不可见字符的ascii
码,
合法
。
b
65
同理
+
三个十进制数
ddd
表示的是
八进制数。65
=