c语言中的“!”

c语言中的“!”是逻辑运算中的非运算。

“!”是C语言中的非运算符版,在变权量前面使用它,会构建非运算表达式,表达式的返回结果是个布尔值(也就是只有true或false)。对变量使用时,如果变量不是布尔数据类型,将会强制转化为布尔类型再使用,如整形变量123将被转化为true,整形变量0将被转化为false。

(1)c语言百度扩展阅读:

C语言所有运算符列表:

1、算术运算符

用于各类数值运算,包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。

2、关系运算符

用于比较运算,包括大于(>)、小于(<)、等于(==)、 大于等于(>=)。

、小于等于(<=)和不等于(!=)六种。

3、逻辑运算符

用于逻辑运算,包括与(&&)、或(||)、非(!)三种。

4、位操作运算符

参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。

5、赋值运算符

用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。

❷ C语言!!!!

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#define STACK_SIZE 100
char contents[STACK_SIZE];
int top = 0;
void make_empty(void)
{
top = 0;
}
bool is_empty(void)
{
return top == 0;
}
bool is_full(void)
{
return top == STACK_SIZE;
}
void stack_overflow(void)
{
printf("Stack overflow");
exit(1);
}
char stack_underflow(void)
{
printf("Stack underflow");
return 0;
}
void push(char i)
{
if(is_full())
stack_overflow();
else
contents[top++] = i;
}
char pop(void)
{
if (is_empty())
return stack_underflow();
else
return contents[--top];
}
int main()
{
char ch;
while (true) {
ch = getchar();
if (ch == '(' || ch == '{') {
push(ch);
}
else if (ch == ')') {
if (pop() != '(') {
printf("Parenteses/braces are not nested properly! ");
break;
}
}
else if (ch == '}') {
if (pop() != '{') {
printf("Parenteses/braces are not nested properly! ");
break;
}
}
else if (ch == '\n') {
if (is_empty()) {
printf("Parenteses/braces are nested properly! ");
}
else{
printf("Parenteses/braces are not nested properly! ");

}
break;
}
}
return 0;
}

❸ 介绍c语言

C语言是面向过程的高级语言,语法简洁,执行效率高,操作符优先级和指针是其难专点属.C语言开发操作系统非常有优势。
锐英源指导C语言非常好,全面能力综合教材海量源码因人施教,保证掌握工作能力,打开成为项目经理或系统分析员之门。

❹ 关于c语言

有这样几个错误,你说的死机原因是因为scanf("%c",a);这行接受变量a的时候应该&a,即scanf("%c",&a); 还有要在输入两个数字后清空缓存区,防止接受到回车字符,即在scanf("%f,%f",&c,&d);这行下面加一行 fflush(stdin); 在printf("请以+,-,*,/,的方式输入你想计算的类型/n");这行的/n应该改为\n 改后代码如下,错误处加上了注释:
#include <conio.h>
#include <stdio.h>
main()
{
char a;
float c,d;
printf("请输入要计算的数字\n");
scanf("%f,%f",&c,&d);
fflush(stdin); //清空缓存区
printf("请以+,-,*,/,的方式输入你想计算的类型\n");
scanf("%c",&a); //要以截地址的方式获取变量
switch(a)
{
case'+':printf("%f",c+d);break;
case'-':printf("%f",c-d);break;
case'*':printf("%f",c*d);break;
case'/':printf("%f",c/d);break;
}
getch();
}

❺ C语言中%的作用

%有两种示意
1、%是求余符号 经常会用到判断一个数是不是能被另一专个整除
如:7%3=1(7除以属3 余下1,) 1%3=1(1除以3除不尽 余下1)
如判断一个m是奇数还是偶数 if(m%2==0) printf("偶数");
2、引导符,用于引导输入输出项表列的格式
例如:printf("%d%c%f",a,b,c);意思就是a以整型输出 b以字符型 输出 c以实型输出

❻ c语言->和 .

你的理解是对的,答案选A。
B错,只有在声明字符数组的时候才能将一个字符串赋给数组。如:char a[5] = "abc";而
char a[5]; a="abc";这种写法是错的。
C错,p[0]不是指针,不能用->。
D错,不能将一个 const char 类型的字符 'a' 赋给 数组 s。

❼ 关于c语言

#include <stdio.h>
int fun1(int a1[], int &k);
int fun2(int a2[], int &k);
int main(void)
{
int a[200], k=0;
printf("putout 1000 7 || 11\n");
fun1(a, k);
// printf("%2d", fun2(a[200], k));
fun2(a, k);
return 1;
}

int fun1(int a1[], int &k) //fun1的功能是保存能被7 或11整除的数;
{
int i;
for(i=1;i<=1000;i++)
{
if(i%7==0 || i%11 == 0)
{
a1[k]=i; //该过的地方
k++;
if(k>=200)
return 0;
}
}
return 1;
}

int fun2(int a2[], int &k) //fun2的功能是输出 能被7 或11整除的数;
{
int i=0;
for(i=0;i<k; i++)
{
printf("%d\n", a2[i]);
}
return 0;
}
/*

问题是:1.main函数的数组的索引被设为局部的变量了。

2.fun函数中,要想通过形参该变实参的值,要么使用指针,要么使用引用。,目前我用的是引用
3.函数的声明得注意
*/

❽ c语言中!是什么意思

C语言的发展过程
C语言是在70年代初问世的。一九七八年由美国电话电报公司(AT&T)贝尔实验室正式发表了C语言。同时由B.W.Kernighan和D.M.Ritchit合著了著名的“THE
C
PROGRAMMING
LANGUAGE”一书。通常简称为《K&R》,也有人称之为《K&R》标准。但是,在《K&R》中并没有定义一个完整的标准C语言,后来由美国国家标准学会在此基础上制定了一个C
语言标准,于一九八三年发表。通常称之为ANSI
C。
当代最优秀的程序设计语言
早期的C语言主要是用于UNIX系统。由于C语言的强大功能和各方面的优点逐渐为人们认识,到了八十年代,C开始进入其它操作系统,并很快在各类大、中、小和微型计算机上得到了广泛的使用。成为当代最优秀的程序设计语言之一。
C语言的特点
C语言是一种结构化语言。它层次清晰,便于按模块化方式组织程序,易于调试和维护。C语言的表现能力和处理能力极强。它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构。它还可以直接访问内存的物理地址,进行位(bit)一级的操作。由于C语言实现了对硬件的编程操作,因此C语言集高级语言和低级语言的功能于一体。既可用于系统软件的开发,也适合于应用软件的开发。此外,C语言还具有效率高,可移植性强等特点。因此广泛地移植到了各类各型计算机上,从而形成了多种版本的C语言。
C语言版本
目前最流行的C语言有以下几种:
·Microsoft
C
或称
MS
C
·Borland
Turbo
C
或称
Turbo
C
·AT&T
C
这些C语言版本不仅实现了ANSI
C标准,而且在此基础上各自作了一些扩充,使之更加方便、完美。
面向对象的程序设计语言
在C的基础上,一九八三年又由贝尔实验室的Bjarne
Strou-strup推出了C++。
C++进一步扩充和完善了C语言,成为一种面向
对象的程序设计语言。C++目前流行的最新版本是Borland
C++4.5,Symantec
C++6.1,和Microsoft
VisualC++
2.0。C++提出了一些更为深入的概念,它所支持的这些面向对象的概念容易将问题空间直接地映射到程序空间,为程序员提供了一种与传统结构程序设计不同的思维方式和编程方法。因而也增加了整个语言的复杂性,掌握起来有一定难度。
C和C++
但是,C是C++的基础,C++语言和C语言在很多方面是兼容的。因此,掌握了C语言,再进一步学习C++就能以一种熟悉的语法来学习面向对象的语言,从而达到事半功倍的目的。