c语言问题,

作者&投稿:宏郎 (若有异议请与网页底部的电邮联系)
C语言问题~

#include

void main(void)
{
double dbNum1,dbNum2;
char cSign;
scanf("%lf%c%lf",&dbNum1,&cSigb
,&dbNum2);
switch(cSign)
{
case'+':printf("%4.1lf
",dbNum1+dbNum2);break;
case'-printf("%4.1lf
",dbNum1-bNum2);break;
case'*:printf("%4.1lf
",dbNum1*bNum2);break;
case'/:printf("%4.1lf
",dbNum1/bNum2);break;

}

}

void main()
{
char c;
printf("输入一个字符:");
scanf("%c",&c);
printf("后继字符是%c,ASCII码为%d
",c+1,c+1);
printf("当前字符是%c,ASCII码为%d
",c,c);
printf("前驱字符是%c,ASCII码为%d
",c-1,c-1);
}
这个程序应该满足你的要求了,而且我已经通过调试了。

没看你的图,不知道你指的是什么.转帖了二维数组的解释.好好看看吧.理解了就好

from :网页链接

二维数组的定义

二维数组定义的一般形式是:
类型说明符 数组名[常量表达式1][常量表达式2]
其中常量表达式1表示第一维下标的长度,常量表达式2 表示第二维下标的长度。例如:
int a[3][4];
说明了一个三行四列的数组,数组名为a,其下标变量的类型为整型。该数组的下标变量共有3×4个,即:
a[0][0], a[0][1], a[0][2], a[0][3]
a[1][0], a[1][1], a[1][2], a[1][3]
a[2][0], a[2][1], a[2][2], a[2][3]

二维数组在概念上是二维的,即是说其下标在两个方向上变化,下标变量在数组中的位置也处于一个平面之中,而不是象一维数组只是一个向量。但是,实际的硬件存储器却是连续编址的,也就是说存储器单元是按一维线性排列的。如何在一维存储器中存放二维数组,可有两种方式:一种是按行排列, 即放完一行之后顺次放入第二行。另一种是按列排列, 即放完一列之后再顺次放入第二列。

在C语言中,二维数组是按行排列的。即,先存放a[0]行,再存放a[1]行,最后存放a[2]行。每行中有四个元素也是依次存放。由于数组a说明为int类型,该类型占两个字节的内存空间,所以每个元素均占有两个字节。



二维数组的元素也称为双下标变量,其表示的形式为:
数组名[下标][下标]
其中下标应为整型常量或整型表达式。例如:
a[3][4]
表示a数组三行四列的元素。

下标变量和数组说明在形式中有些相似,但这两者具有完全不同的含义。数组说明的方括号中给出的是某一维的长度,即可取下标的最大值;而数组元素中的下标是该元素在数组中的位置标识。前者只能是常量,后者可以是常量,变量或表达式。

【例1】一个学习小组有5个人,每个人有三门课的考试成绩。求全组分科的平均成绩和各科总平均成绩。
--     张     王     李     赵     周
Math     80     61     59     85     76
C     75     65     63     87     77
Foxpro     92     71     70     90     85
可设一个二维数组a[5][3]存放五个人三门课的成绩。再设一个一维数组v[3]存放所求得各分科平均成绩,设变量average 为全组各科总平均成绩。编程如下:

#include <stdio.h>
int main(void){
    int i,j,s=0,average,v[3],a[5][3];
    printf("input score
");
    for(i=0;i<3;i++){
        for(j=0;j<5;j++){
            scanf("%d",&a[j][i]);
            s=s+a[j][i];
        }
        v[i]=s/5;
        s=0;
    }
    average =(v[0]+v[1]+v[2])/3;
    printf("math:%d
c languag:%d
dbase:%d
",v[0],v[1],v[2]);
    printf("total:%d
", average );
    return 0;
}

程序中首先用了一个双重循环。在内循环中依次读入某一门课程的各个学生的成绩,并把这些成绩累加起来,退出内循环后再把该累加成绩除以5送入v[i]之中,这就是该门课程的平均成绩。外循环共循环三次,分别求出三门课各自的平均成绩并存放在v数组之中。退出外循环之后,把v[0]、v[1]、v[2]相加除以3即得到各科总平均成绩。最后按题意输出各个成绩。
二维数组的初始化

二维数组初始化也是在类型说明时给各下标变量赋以初值。二维数组可按行分段赋值,也可按行连续赋值。

例如对数组a[5][3]:
按行分段赋值可写为:
int a[5][3]={ {80,75,92}, {61,65,71}, {59,63,70}, {85,87,90}, {76,77,85} };
按行连续赋值可写为:
int a[5][3]={ 80,75,92,61,65,71,59,63,70,85,87,90,76,77,85};
这两种赋初值的结果是完全相同的。

【例2】求各科平局分和总成绩平均分。

#include <stdio.h>
int main(void){
    int i,j,s=0, average,v[3];
    int a[5][3]={{80,75,92},{61,65,71},{59,63,70},{85,87,90},{76,77,85}};
    for(i=0;i<3;i++){
        for(j=0;j<5;j++)
            s=s+a[j][i];
        v[i]=s/5;
        s=0;
    }
    average=(v[0]+v[1]+v[2])/3;
    printf("math:%d
c languag:%d
dFoxpro:%d
",v[0],v[1],v[2]);
    printf("total:%d
", average);
    return 0;
}


对于二维数组初始化赋值还有以下说明:
1) 可以只对部分元素赋初值,未赋初值的元素自动取0值。例如:
int a[3][3]={{1},{2},{3}};
是对每一行的第一列元素赋值,未赋值的元素取0值。 赋值后各元素的值为:
1  0  0
2  0  0
3  0  0
int a [3][3]={{0,1},{0,0,2},{3}};
赋值后的元素值为:
0  1  0
0  0  2
3  0  0

2) 如对全部元素赋初值,则第一维的长度可以不给出。例如:

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

可以写为:

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


3) 数组是一种构造类型的数据。二维数组可以看作是由一维数组的嵌套而构成的。设一维数组的每个元素都又是一个数组,就组成了二维数组。当然,前提是各元素类型必须相同。根据这样的分析,一个二维数组也可以分解为多个一维数组。C语言允许这种分解。

如二维数组a[3][4],可分解为三个一维数组,其数组名分别为:
a[0]
a[1]
a[2]
对这三个一维数组不需另作说明即可使用。这三个一维数组都有4个元素,例如:一维数组a[0]的元素为a[0][0],a[0][1],a[0][2],a[0][3]。必须强调的是,a[0],a[1],a[2]不能当作下标变量使用,它们是数组名,不是一个单纯的下标变量。




幼儿语言常见的问题及措施
幼儿语言常见的问题及措施如下:1、幼儿语言教育存在一定的超前性。在幼儿语言教育中,部分幼儿教师未能有效地分析幼儿的语言学习基础,在开展语言教育的过程中,存在脱离实际,盲目跟进的做法。部分幼儿教师不考虑幼儿的接受程度,不考虑幼儿自身的特点,将本来不属于幼儿学习阶段的语言内容放到课堂上来讲,造成...

你知道什么是语篇的问题吗?
2、结构问题(Structural Questions):结构问题旨在理解语篇的总体结构或组织。例如,这段文本的结构是什么?作者使用了哪些修辞手法或论证步骤来组织观点?这个演讲的三个主要部分是什么?3、语言问题(Linguistic Questions):语言问题涉及语篇中使用的语言特征和技巧。例如,这段文本的文体是什么?作者如何使...

语言问题的简介
《语言问题》是赵元任教授在台湾大学文学院中文系的演讲记录。全书十六讲,系统地讲述了语言学以及与语言学有关系的各项基本问题,是作者的重要著作之一。本书已经成为现代语言学的经典之作。

在儿童学习语言的问题上,颜之推认为应该()。
【答案】:B 本题考查魏晋南北朝人物与教育思想的对应。颜之推重视儿童的语言教育,他认为儿童时期是学习语言的关键时期,儿童学习语言要标准化,应该学习通用语言而不是方言。B项正确。A、C、D三项:均为干扰项。与题干不符,排除。故正确答案为B。

幼儿语言6大问题
幼儿语言6大问题1 1、语言发展迟缓 某些幼儿因先天生理上的缺陷、听觉障碍、脑部功能不足,或后天生长环境没有给予足够的语言刺,泪使得语言理解或表达能力比不上同年龄层正常的小孩,就称之为语言发展迟缓。针对这种小孩语言治疗的时机是早开始愈好。2、构音异常 即幼儿说话时语音不清的情形。这是最...

修改Windows系统的语言并解决“无法获取此Windows显示语言”问题...
然而,有时候下载过程中会遇到“无法获取Windows显示语言”的阻碍。这时,我们需要深入系统内部。按下Windows徽标键+R,输入“services.msc”,开始对Windows Update进行调试(服务管理器→Windows Update属性)。将“启动类型”设置为“手动”,并确保权限正确。如果遇到“拒绝访问”的问题,继续进入注册表编辑...

关于语言的问题
劳动论 与摹声论相似的理论认为语言是与艰苦劳动密不可分的,语言是从哼哼声和呼喊声发展而来的。但是,以上这些理论严格地限制了词汇的范围,因而不被大多数人认可。与生俱来论 有的学者认为可以通过观察儿童如何学习说话来提示有关语言起源的一些问题。如古埃及的国王萨玛堤欧斯曾把两个婴儿放在与世...

国际理解教育语言层面常见的问题
国际理解教育语言层面常见的问题如下:1、会存在学生发音不准的问题。当我们都习惯了自己的母语系统之后,我们的发音系统也基本上都定型了。在学习外语的时候,会经常遇到母语中没有的发音方式和发音方法,这个时候,这些不一样的发音,就会对学生产生很大的困扰。所以在语言教学中,老师们经常会遇到学生发音...

c语言常见问题有哪些?
但C语言中,“=”是赋值运算符,“==”是关系运算符。如:if (a==3)a=b;前者是进行比较,a是否和3相等,后者表示如果a和3相等,把b值赋给a。由于习惯问题,初学者往往会犯这样的错误。5.忘记加分号。分号是C语句中不可缺少的一部分,语句末尾必须有分号。a=1 b=2 编译时,编译程序在“a=...

C语言简单问题
scanf 是输入语句,"%2d%2d%3d",&a,&b,表示按照两位整数的格式依次获取两个输入的数据,并且分别存储在变量和变量b中,所以 a=12,b=34。(这里%3d可以忽略,因为没有对应的存储变量了)printf 是输出语句,“%d",a+b,表示以整数的形式输出 a+b 的值,当然就是 12+34 = 46了。

龙子湖区13588561154: C语言问题:C语言中没有逻辑量,在判断一个量是否为真时以( ) 代表“真”,以 ( )代表“假C语言问题:C语言中没有逻辑量,在判断一个量是否为真... -
种罚爱宝:[答案] C语言没有专门bool(布尔)类型数据, 在C语言中用0表示假,其余非0整型数据表示真. 例如 int i=7,j=0; if(i) printf("%d",i); if(j) prinftf("%d",j); 结果只会显示7.

龙子湖区13588561154: C语言问题 -
种罚爱宝: C有啥用?肯怕你还不知道,你之所以能够玩游戏,之所以能够上网,之所以能够在网上发布这个问题,大部分是C语言的功劳,越高级的语言其编的程序在电脑上运行就越慢(因为花在将高级语言转化为机器语言的时间越长),C语言可以说...

龙子湖区13588561154: C语言问题,求高手解答.:C语言问题,小白勿入描述:FOR语句循环,我们假定有三个循环.当程序运行到一定程度时怎样让语句从第三个循环返回时直... -
种罚爱宝:[答案] 如果只是单纯的实现问题的功能. goto语句就可以了.(虽然goto有点不利于程序可读.但是这里用goto是最直接的方法.) 下面是伪代码: firstFor: for(参数)//第一个for循环 { for(参数)//第2个for循环 { for(参数)第3个fo...

龙子湖区13588561154: C语言问题 -
种罚爱宝: A、正确; B、等号左边不能有算术表达式,错误; C、同上,错误; D、定义语句只能是变量,赋值表达式,不能是纯算术表达式;错误; 虽然楼主有补充说是D,但我认为是A正确,题面己说x,y正确定义,那就...

龙子湖区13588561154: 关于C语言的问题
种罚爱宝: int a=10; a+=a-=a-a (此题是:复合赋值表达式,复合赋值运算符的运算优先级与赋值运算符的优先级相同(优先级都非常低),运算方向均为自右向左.(1)先计算最右边的表达式a-a的值为0. (2)再计算a-=0,该表达式等价a=a-0=10.(此时...

龙子湖区13588561154: C语言的问题 -
种罚爱宝: 第一个程序中 char c1="C",c2="h",c3="i",c4='n',c5='a'; 这句有问题: 你的第一个字符C是大写,如果你本意是小写的话呢,最后输出结果和程序2就是完全相同的了; 如果你本意是大写C,那最后输出结果就不一样了; 你c1,c2,c3赋值是使用了双引号......这里应该是搓了,应该是单引号 按照我理解的,如果c是小写的话,你两个程序输出结果必然一样

龙子湖区13588561154: 简单的C语言问题 -
种罚爱宝: main() int a,b,c,t; scanf("%d%d%d",&a,&b,&c); /* 输入三个数 */ printf("a=%d,b=%d,c=%d",a,b,c); /* 做比较用 */ t=a;a=b;b=t; /* 现在b原来的值变成了a的值,a原来的值变成了b的值 */ t=a;a=c;c=t; /* 这时候 a的值(其实是b的原值) 变成了c的值,也就等于b 的值给了C;*/同时C的值也给a printf("%4d,%4d,%4d",a,b,c); }

龙子湖区13588561154: C语言问题解答
种罚爱宝: C语言是一种计算机程序设计语言.它既有高级语言的特点,又具有汇编语言的特点.它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不 依赖计算机硬件的应用程序.因此,它的应用范围广泛. C是结构...

龙子湖区13588561154: 有关c语言的问题 -
种罚爱宝: int func(); 这个不对,如果正确的话是2func(5,3)==2

龙子湖区13588561154: 关于C语言编程问题 -
种罚爱宝: "我在TURBO C上运行了也没有错误"按Ctrl+F9运行……另外在TC的文件夹里(默认),生成了对应的exe文件,那个程序可以用于发布.引用一下别人说的:“珍爱生命,远离TC”……

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网