写出下列程序的执行结果是:__________________。#include<;iostream>;using namespace std;int f1( int a, int b ) { return a + b ;}int f2( int a, int b ){ return a - b ;}int f3( int( *t )( int, int ), int a, int b ) { return ( *t )( a, b ) ;}void main(){ int ( *p )( int, int ); p = f1 ; cout <;<; f3( p, 4, 8 ) <;<;","; p = f2 ; cout <;<; f3( p, 8, 4 );}
举一反三
- 写出下列程序的执行结果是:__________________。#include<;iostream>;using namespace std;int f2( int, int );int f1( int a , int b ){ int c ; a += a ; b += b ; c = f2( a+b , b+1 ); return c;}int f2( int a , int b ){ int c ; c = b % 2 ; return a + c;}void main(){ int a = 3 , b = 4; cout <;<; f1( a , b ) <;<; endl;}
- #include [iostream] using namespace std; int f2( int, int); int f1(int a,int b) {int c; a+=a;b+=b; c=f2( a+b,b+1); return c; } int f2( int a,int b) {int c; c=b%2; return a+c; } void main() {int a=3,b=4; cout<<f1(a,b)<<endl; }程序的输出结果为________________。
- 以下哪个函数是不正确的(与能否被编译无关)? A: int* f(int *p) { int i; return &i; } B: int* f(int *p) { return p; } C: int* f(int *p) { return (int*)malloc(sizeof(int)); } D: int* f(int *p) { return NULL; }
- 中国大学MOOC: 以下程序调用函数的顺序为()#include<stdio.h>int f1(int a, int b);int f2(int a, int b);int f3(int a, int b);int f4(int a, int b);int main() { int a, b,ans; a = 1; b = 2; ans = f1(a, b);}int f1(int a, int b) { return f2(a,b);}int f2(int a, int b) { if (a>b) return f3(a, b); return f4(a, b);}int f3(int a, int b) { return a - b;}int f4(int a, int b) { return b - a;}
- 阅读以下程序,a的值为#include<stdio.h>int a;int f1(int b, int c, int d);int f2(int b, int c);int f3(int b);int f1(int b, int c, int d) { return f2(b*c, d);}int f2(int b, int c) { return f3(b*c);}int f3(int b) { a = b; return a == 32;}int main() { int b = 2, c = 4, d = 8, ans; a = 1; ans = f1(b, c, d); return 0;} A: 1 B: 2 C: 32 D: 64