精华内容
下载资源
问答
  • 以下程序的输出结果是( )。 #include int f(int a) {  int b=0;  static int c=3;  a=c++,b++;  return a; } void main() {  int a,i,t;  a=3; ...
  • package com.njue.mis; import java.util.*; public class Test { public static void main(String[] args){ Queue queue = new PriorityQueue(10, ...public int compare(Integer i,Integer j
    package com.njue.mis;
    import java.util.*;
    public class Test {
    public static void main(String[] args){
    Queue<Integer> queue = new PriorityQueue<Integer>(10,
    new Comparator<Integer>(){
    public int compare(Integer i,Integer j){
    int result = i%2-j%2;
    if(result == 0)
    result = i -j;
    return result;
    }

    });
    for(int i = 0; i<10; i++)
    {
    queue.offer(i);
    }
    for(int i = 0; i<10; i++)
    {
    System.out.println(queue.poll());
    }

    }
    }
    展开全文
  • 问题:从键盘上输入“446755”,以下程序的输出结果是多少 //getchar函数的应用 #include<stdio.h> int main() { int c; while((c=getchar())!='\n') //注释1 { switch(c-'2') //注释2 { case 0: //...

    问题:从键盘上输入“446755”,以下程序的输出结果是多少


    //getchar函数的应用
    #include<stdio.h>
    int main()
    {
    	int c;
    	while((c=getchar())!='\n')              //注释1
    	{
    		switch(c-'2')                       //注释2
    		{
    			case 0:                         //注释3
    			case 1:putchar(c+4);            //注释4
    			case 2:putchar(c+4);break;      //注释5
    			case 3:putchar(c+3);            //注释6
    			default:putchar(c+2);break;     //注释7
    		}
    	}
    	printf("\n");
    	return 0;
    }
    

    在这里插入图片描述


    [解题思路]

    1.getchar()函数:顾名思义(get character),即得到一个字符。


    2.那什么是字符呢?字符常量包括普通字符和转义字符----
    普通字符形如’1’、‘a’、’?’、’$‘等用单撇号括起来的一个字符(‘1234’、‘fhssgj’这种形式表达是不正确的,对于用双撇号括起来的"1234"属于字符串常量,而不是字符常量);
    转义字符是以字符\开头的字符序列,如’\n’、’\t’、’\012’等。


    3.getchar()是在输入缓冲区顺序读入一个字符(包括空格、回车和Tab)


    4.getchar()会从输入缓冲区去读取内容,键盘输入字符是先存在缓冲区,当我们把所有的内容都输入完成(本例中输入446755)并且按下了Enter键后,getchar()就会进入缓冲区读取字符,每一次getchar()从输入缓冲区读取一个字符被读取的字符从缓冲区中清除


    5.接下来我们来分析下代码:

    注释1】 当用键盘输入446755时,输入内容存在缓冲区(此getchar()还没有进入缓冲区读取字符),当按下回车键时,getchar()就会进入缓冲区读取字符,此时输入缓冲区中存在7个字符 446755\n(\n换行符是按下回车键获得的)而 getchar函数的返回值是用户输入的第一个字符ASCII码值,字符’4’对应的ASCII码值是52,故此时整型变量c=52,进入【注释2

    注释2】:switch后面括号里的表达式值为c-‘2’=2(字符‘2’的ASCII码值为50,52-50=2;),进入【注释5】;

    注释5】:c+4=56(注意:1.这里的4是整型,非字符;2.变量c的值仍为52,不是2,虽然注释2中有表达式c-‘2’,但未再赋给变量c),ASCII码值为56对应的字符为8;故执行putchar(c+4);后输出结果8;
    putchar()函数输出的是字符,不是字符的ASCII码,如putchar(97),输出的是字符a;
    这里贴上代码和结果欣赏下:


    #include<stdio.h>
    int main()
    {
    	putchar(97);
    	return 0;
    }
    

    在这里插入图片描述


    回到本例中,输出结果8后,进入第while第2次循环,进入【注释1】,此时getchar()从缓存区读取第二个字符’4’(前面已说过,输入的第一个字符’4’已经从缓冲区清除,被用过了,还用干啥!扔了),由于第二个字符仍为’4’,故同上述步骤,经过一波操作后,屏幕上又输出8;

    进入第3次循环至【注释1】, 此时getchar()从缓存区读取第3个字符’6’(字符‘6’的ASCII码值为54),满足(c=getchar())!=’\n’,代码走到【注释2】,switch后面括号里的表达式值为c-‘2’=4(字符‘2’的ASCII码值为50,54-50=4;),进入【注释7】;

    【注释7】 c+2=56(注意:1.这里的2是整型,非字符;2.变量c的值仍为54,不是4,虽然注释2中有表达式c-‘2’,但未再赋给变量c),ASCII码值为56对应的字符为8;故执行putchar(c+2);后输出结果8;

    再读取字符’7’……一波操作后输出9;

    读取字符’5’(第一个),进入【注释6】 case 3:putchar(c+3); (注意:此语句后面没有break;,执行这条语句输出结果8,之后还没有跳出switch语句,进入注释7,接着输出7)

    再读取字符’5’(第二个),同理输出结果87

    最后,输入缓冲区里只剩下’\n’,不满足while()循环条件,跳出循环,


    最终输入"446755",
    输出"88898787"


    展开全文
  • { int p[7]={11,13,14,15,16,17,18}; int i=0,j=0; while(i<7 && p[i]%2==1) j+=p[i++]; printf("%d\n",j); } 正确答案: B 你答案: B (正确) 23 24 25 26 i等于0时,p[0]为奇数,进入while循环,j累加了...

    main()
    { int p[7]={11,13,14,15,16,17,18};
    int
    i=0,j=0;

    while(i<7 && p[i]%2==1) j+=p[i++];

    printf("%d\n",j);
    }

    正确答案: B 你的答案: B (正确)

    23
    24
    25
    26

    i等于0时,p[0]为奇数,进入while循环,j累加了p[0]的值为11; i加1为1,p[1]为奇数,进入while循环, j累加了p[1]的值,为24 i加一为2,而p[2]为偶数,跳出while循环,j为24

    展开全文
  • 假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录DOS提示符下键入: PROG ABCDEFGH IJKL回车>,则输出结果为 main(int argc,char*argv0[]) while(–argc>0) printf("% s",argv...

    假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS提示符下键入:
    PROG ABCDEFGH IJKL<回车>,则输出结果为
    main(int argc,char*argv0[])
    while(–argc>0)
    printf("% s",argv[argc]);
    printf("\n");

    A.ABCDEFG
    B.IJHL
    C.ABCDEFGHIJKL
    D.IJKLABCDEFGH

    argc表示参数的个数,应为3,argv是一个指向字符串的指针数组,指针数组argv中的元素argv[0]指向字符串"PROG",元素argv[1]指向字符串“ABCDEFGH”,argv[2]指向字符串“IJKL”。在while循环条件中,先进行自减运算,再执行相应的 printf语句。

    展开全文
  • #include <stdio.h> int main (int argc, char *argv[]) { int a[3][2] = {(1,2),(3,4),(5,6)}; int *p = a[0]; printf("%d\n",p[0]);...输出答案为:2 int a[3][2] = {(1,2),(3,4),(5,6)}; 上面赋值...
  • int main(void) { int i,j,k,l; cout<<“Input i:”<<endl; cin>>oct>>i; //输入为八进制数 cout<<“hex:”<<"i = "<<hex<<i<<endl; return (0); }
  • 【填空题】Pyhon语句序列"s1= 'red hat';...【填空题】程序填空题 以下程序可把水仙花数(即3位正整数中各位数字立方和等于该数本身)装入数组中,然后依次输出,请填空。 #include int main() { int x,y,z,a[10],m,...
  • 给定以下方法声明,调用执行 mystery(1234) 的输出结果? (43211234) //precondition: x >=0 public void mystery (int x) { System.out.print(x % 10); if ((x / 10) != 0){ mystery(x / 10); } ...
  • 编写一个可以在C和C++中编译并运行程序,但是在由C和C++编译器编译时会产生不同的结果。可以有很多这样程序,...例如,以下程序在C中生成sizeof(int)作为输出,而在C++中生成sizeof(char)。#include int main()...
  • 以下程序的输出结果是_ main) { float a ; a=1/100000000 ; printf%g,a; } 下面程序的输出结果是_ #include<stdio.h> main) { int x=10 ;... } 以下程序的输出结果是_ main) { unsigned int n ; int i=-521
  • 以下是该无聊的程序: #include <stdio.h> #include <string.h> char* get_str() { int x[10]; char str[] = "hello world! long long long long long long long!!!"; retur...
  • 以下是我在准备面试准备过程中遇到一些问题,且每一道题我都在编译器中敲过,希望也对准备面试朋友有帮助。一、赋值语句1、#include #include using namespace std; int main() { int x = 2,y,z; x *= (y = ...
  • 【单选题】以下程序执行后的输出结果是#includeintmain(){intx=0,y=5,z=3;while(z-->0&&++x<5){y=y-1;}printf("%d,%d,%d\n",x,y,z);return0;}【单选题】下面程序代码的功能是判断输入整数的正负性和...
  • 以下程序中函数cutpaste功能将line指向数组中从下标为source开始连续len个字符作为一个子串复制到一个临时数组中,并将这些字符从line指向数组中删除;再将临时数组中子串追加到line指向数组中字符串尾部...
  • 【判断题】int(10.88)的输出结果是10。(1.0分)【判断题】在格式化字符串中,在格式化标记中使用“^”可以让输出的内容在指定的输出位置居中对齐。(1.0分)【单选题】下列表达式的值为True的是________。(2.5分)【判断...
  • <code>//以下这个无输出结果 int main() { int i = 100, a; while (i < 201) { ...//以下这个则会输出奇怪的结果 int main() ... int i, a;...%d素数,...第二种代码的输出结果 纯小白望指教</p>
  • 如果你想知道详细情况话,发给你一个网友求助与本人回答,自己看吧……假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录提示符下键入: PROG ABCDEFGH IJKL则输出结果为:...
  • main(int argc,char *argv[])函数两个形参,第一个int argc,记录你输入在命令行(你题目中说操作就是命令行输入)上字符串个数;第二个*argv[]个指针数组,存放输入在命令行上命令(字符串)。当命令行...
  • Java数据库查询结果的输出 摘自:北京海脉信息咨询有限公司  利用Java开发数据库应用时,经常需要在用户界面上显示查询结果。我们可以利用Vector、JTable、AbstractTableModel等三个类较好地解决这一问题。 类...
  • 今天做一个逆序输出字符的程序,代码没有问题,可是输入感叹号之后逆序输出就有问题,感叹号会变成句号,结果发现用了某狗输入法,改用微软本身自带输入法就没有问题,以下是代码: #include<stdio.h> int ...
  • 【程序题】已知x=10,y=20,z=30;以下语句执行后x,y,z的值是( )。...【程序题】以下程序的输出结果是( )。 list_demo=[1,2,3,4,5,'a','b'] print(list_demo[1],list_demo[5])【程序题】下列Python语句正确的是( )。...
  • 201、以下程序的输出的结果是 int x=3; main() { int i; for (i=1;i、C、2 202、以下程序的输出结果... while(i、B、2 203、以下程序的输出结果是 int f() { static int i=0; int s=1; s+=i; i++; return s; } main()
  • 将执行计算最后结果输出。注意所有计算都只取结果的整数部分。题目保证计算中间和最后结果的绝对值都不超过 10​9​​。 如果执行除法时出现分母为零非法操作,则在一行中输出:<code>ERROR: ...
  • 仔细看了一下 感觉你这程序结果不该这样呢StringBuilder insert 这个方法语法:声明以下是java.lang.StringBuilder.insert()方法声明public StringBuilder insert(int offset, String str)参数offset-- 这...
  • 你好,我们采用C++计算机...以下是程序;#include #include #include using namespace std;int main(){double a, b, c;cout << "请输入边长a;";cin >> a;cout << "请输入边长b;";cin >>...
  • 阅读程序题 以下程序的输出结果是 main(D ) { float a printf%g" a) } A) +00 B) C) D) 0 下面程序的输出结果是 B_ #include > main( ) { int x=10 { int x=20 printf %d , x) } printf%d\n, x) } A) 10 20 B) 20 10...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 673
精华内容 269
关键字:

以下程序的输出结果是int